ArrayObject::count


Get the number of public properties in the ArrayObject.



<?php

int 
public ArrayObject::count void )

?>

 ATTENTION 


When the $ArrayObject is constructed from an array all properties are public.



  1 EXERCISE   

<?php

class Example {
    public 
$public 'public variable';
    private 
$priv   'private variable';
    protected 
$prot 'protected variable';
}

$arrayobj = new ArrayObject(new Example());

$arrayobj = new ArrayObject(['Alea jact est',
                                               
'Maxima debetur puero reverentia'
                                               
'Ad augusta per angusta']);
                                               
echo 
'In this ArrayObject, there are ' $arrayobj->count() . ' public properties.';

?>

 RESULT   

In this ArrayObject, there is 3 public properties.

  2 EXERCISE   

<?php

class Test02 {
    public 
$pubc 'Alea Jacta Est';
    private 
$priv   'Maxima debetur puero reverentia';
    protected 
$prot 'Ad augusta per angusta';
}

$arrayobj = new ArrayObject(new Test02());

    
$pubc 'Alea Jacta Est';
    
$priv   'Maxima debetur puero reverentia';
    
$prot 'Ad augusta per angusta';

$arrayobj = new ArrayObject([$pubc$priv$prot]);
echo 
'In this ArrayObject, there are ' $arrayobj->count() . ' public properties.';

?>

 RESULT   

In this ArrayObject, there is 3 public properties.

  3 EXERCISE   

<?php

class Test03 {
    public 
string $pubc 'Alea Jacta Est';
    private 
string $priv   'Maxima debetur puero reverentia';
    protected 
string $prot 'Ad augusta per angusta';
}
/* - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
       
       This type declarations is supported,
               only, as of PHP 7.4.0 
   
   - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - */

$obj03 = new Test03;

print_r($obj03);

$arrayobj = new ArrayObject($obj03);

echo 
'<br><br>In this ArrayObject, there is ' $arrayobj->count() . ' public propertie.';

?>

 RESULT   

Test03 Object ( [pubc] => Alea Jacta Est [priv:Test03:private] => Maxima debetur puero reverentia [prot:protected] => Ad augusta per angusta )

In this ArrayObject, there is 1 public propertie.


  4 EXERCISE   

<?php
class Counter{
 private 
$count;
 public static 
$instance;
 
 public function 
__construct($count 0){
 
$this->count $count;
 
self::$instance++;
 }
 
 public function 
count(){
 
$this->count++;
 return 
$this;
 
 }
 
 public function 
__toString(){
 return (string)
$this->count;
 }
 
 public static function 
countInstance(){
 return 
self::$instance;
 }
}
 
$c1 = new Counter();
$c1->count()
   ->
count();
echo 
'Counter 1 value: '$c1 '<br/>';
 
$c2 = new Counter();
$c2->count()
   ->
count()
   ->
count();
 
echo 
'Counter 2 value: '$c2 '<br/>';
 
echo 
'The number of counter instances:' 
 
Counter::countInstance() 
     . 
'<br/>';

 RESULT   

Counter 1 value: 2
Counter 2 value: 3
The number of counter instances:2

  5 EXERCISE   

<?php



?>

 RESULT