kraghuba Fri Nov 16 17:55:55 2007 UTC
Added files: (Branch: PHP_5_2)
/php-src/ext/standard/tests/array sizeof_object2.phpt
sizeof_basic1.phpt
sizeof_basic2.phpt
sizeof_error.phpt
sizeof_variation1.phpt
sizeof_variation2.phpt
sizeof_variation3.phpt
sizeof_variation4.phpt
sizeof_variation5.phpt
sizeof_object1.phpt
Log:
New testcases for sizeof() function
http://cvs.php.net/viewvc.cgi/php-src/ext/standard/tests/array/sizeof_object2.phpt?view=markup&rev=1.1
Index: php-src/ext/standard/tests/array/sizeof_object2.phpt
+++ php-src/ext/standard/tests/array/sizeof_object2.phpt
--TEST--
Test sizeof() function : object functionality - objects without Countable
interface
--FILE--
<?php
/* Prototype : int sizeof($mixed var[, int $mode] )
* Description: Counts an elements in an array. If Standard PHP library is
installed,
* it will return the properties of an object.
* Source code: ext/standard/basic_functions.c
* Alias to functions: count()
*/
echo "*** Testing sizeof() : object functionality ***\n";
echo "--- Testing sizeof() with objects which doesn't implement Countable
interface ---\n";
// class without member
class test
{
// no members
}
// class with only members and with out member functions
class test1
{
public $member1;
var $var1;
private $member2;
protected $member3;
// no member functions
}
// class with only member functions
class test2
{
// no data members
public function display()
{
echo " Class Name : test2\n";
}
}
// child class which inherits parent test2
class child_test2 extends test2
{
public $child_member1;
private $child_member2;
}
// abstract class
abstract class abstract_class
{
public $member1;
private $member2;
abstract protected function display();
}
// implement abstract 'abstract_class' class
class concrete_class extends abstract_class
{
protected function display()
{
echo " class name is : concrete_class \n ";
}
}
$objects = array (
/* 1 */ new test(),
new test1(),
new test2(),
new child_test2(),
/* 5 */ new concrete_class()
);
$counter = 1;
for($i = 0; $i < count($objects); $i++)
{
echo "-- Iteration $counter --\n";
$var = $objects[$i];
echo "Default Mode: ";
var_dump( sizeof($var) );
echo "\n";
echo "COUNT_NORMAL Mode: ";
var_dump( sizeof($var, COUNT_NORMAL) );
echo "\n";
echo "COUNT_RECURSIVE Mode: ";
var_dump( sizeof($var, COUNT_RECURSIVE) );
echo "\n";
$counter++;
}
echo "Done";
?>
--EXPECTF--
*** Testing sizeof() : object functionality ***
--- Testing sizeof() with objects which doesn't implement Countable interface
---
-- Iteration 1 --
Default Mode: int(1)
COUNT_NORMAL Mode: int(1)
COUNT_RECURSIVE Mode: int(1)
-- Iteration 2 --
Default Mode: int(1)
COUNT_NORMAL Mode: int(1)
COUNT_RECURSIVE Mode: int(1)
-- Iteration 3 --
Default Mode: int(1)
COUNT_NORMAL Mode: int(1)
COUNT_RECURSIVE Mode: int(1)
-- Iteration 4 --
Default Mode: int(1)
COUNT_NORMAL Mode: int(1)
COUNT_RECURSIVE Mode: int(1)
-- Iteration 5 --
Default Mode: int(1)
COUNT_NORMAL Mode: int(1)
COUNT_RECURSIVE Mode: int(1)
Done
--UEXPECTF--
*** Testing sizeof() : object functionality ***
--- Testing sizeof() with objects which doesn't implement Countable interface
---
-- Iteration 1 --
Default Mode: int(1)
COUNT_NORMAL Mode: int(1)
COUNT_RECURSIVE Mode: int(1)
-- Iteration 2 --
Default Mode: int(1)
COUNT_NORMAL Mode: int(1)
COUNT_RECURSIVE Mode: int(1)
-- Iteration 3 --
Default Mode: int(1)
COUNT_NORMAL Mode: int(1)
COUNT_RECURSIVE Mode: int(1)
-- Iteration 4 --
Default Mode: int(1)
COUNT_NORMAL Mode: int(1)
COUNT_RECURSIVE Mode: int(1)
-- Iteration 5 --
Default Mode: int(1)
COUNT_NORMAL Mode: int(1)
COUNT_RECURSIVE Mode: int(1)
Done
http://cvs.php.net/viewvc.cgi/php-src/ext/standard/tests/array/sizeof_basic1.phpt?view=markup&rev=1.1
Index: php-src/ext/standard/tests/array/sizeof_basic1.phpt
+++ php-src/ext/standard/tests/array/sizeof_basic1.phpt
--TEST--
Test sizeof() function : basic functionality - for scalar types
--FILE--
<?php
/* Prototype : int sizeof(mixed $var[, int $mode] )
* Description: Counts an elements in an array. If Standard PHP library is
* installed, it will return the properties of an object.
* Source code: ext/standard/basic_functions.c
* Alias to functions: count()
*/
/* Testing the sizeof() for some of the scalar types(integer, float) values
* in default, COUNT_NORMAL and COUNT_RECURSIVE modes.
*/
echo "*** Testing sizeof() : basic functionality ***\n";
$intval = 10;
$floatval = 10.5;
$stringval = "String";
echo "-- Testing sizeof() for integer type in default, COUNT_NORMAL and
COUNT_RECURSIVE modes --\n";
echo "default mode: ";
var_dump( sizeof($intval) );
echo "\n";
echo "COUNT_NORMAL mode: ";
var_dump( sizeof($intval, COUNT_NORMAL) );
echo "\n";
echo "COUNT_RECURSIVE mode: ";
var_dump( sizeof($intval, COUNT_RECURSIVE) );
echo "\n";
echo "-- Testing sizeof() for float type in default, COUNT_NORMAL and
COUNT_RECURSIVE modes --\n";
echo "default mode: ";
var_dump( sizeof($floatval) );
echo "\n";
echo "COUNT_NORMAL mode: ";
var_dump( sizeof($floatval, COUNT_NORMAL) );
echo "\n";
echo "COUNT_RECURSIVE mode: ";
var_dump( sizeof($floatval, COUNT_RECURSIVE) );
echo "Done";
?>
--EXPECTF--
*** Testing sizeof() : basic functionality ***
-- Testing sizeof() for integer type in default, COUNT_NORMAL and
COUNT_RECURSIVE modes --
default mode: int(1)
COUNT_NORMAL mode: int(1)
COUNT_RECURSIVE mode: int(1)
-- Testing sizeof() for float type in default, COUNT_NORMAL and
COUNT_RECURSIVE modes --
default mode: int(1)
COUNT_NORMAL mode: int(1)
COUNT_RECURSIVE mode: int(1)
Done
--UEXPECTF--
*** Testing sizeof() : basic functionality ***
-- Testing sizeof() for integer type in default, COUNT_NORMAL and
COUNT_RECURSIVE modes --
default mode: int(1)
COUNT_NORMAL mode: int(1)
COUNT_RECURSIVE mode: int(1)
-- Testing sizeof() for float type in default, COUNT_NORMAL and
COUNT_RECURSIVE modes --
default mode: int(1)
COUNT_NORMAL mode: int(1)
COUNT_RECURSIVE mode: int(1)
Done
http://cvs.php.net/viewvc.cgi/php-src/ext/standard/tests/array/sizeof_basic2.phpt?view=markup&rev=1.1
Index: php-src/ext/standard/tests/array/sizeof_basic2.phpt
+++ php-src/ext/standard/tests/array/sizeof_basic2.phpt
--TEST--
Test sizeof() function : basic functionality - for non-scalar type(array)
--FILE--
<?php
/* Prototype : int sizeof(mixed $var[, int $mode] )
* Description: Counts an elements in an array. If Standard PHP library is
* installed, it will return the properties of an object.
* Source code: ext/standard/basic_functions.c
* Alias to functions: count()
*/
/* Testing the sizeof() for non-scalar type(array) value
* in default, COUNT_NORMAL and COUNT_RECURSIVE modes.
* Sizeof() has been tested for simple integer, string,
* indexed and mixed arrays.
*/
echo "*** Testing sizeof() : basic functionality ***\n";
$int_array = array(1, 2, 3, 4);
$string_array = array("Saffron", "White", "Green");
$indexed_array = array("Agression" => "Saffron", "Peace" => "White", "Growth"
=> "Green");
$mixed_array = array(1, 2, "Aggression" => "Saffron", 10 => "Ten", "Ten" => 10);
echo "-- Testing sizeof() with integer array in default, COUNT_NORMAL,
COUNT_RECURSIVE modes --\n";
echo "default mode: ";
var_dump( sizeof($int_array) );
echo "\n";
echo "COUNT_NORMAL mode: ";
var_dump( sizeof($int_array, COUNT_NORMAL) );
echo "\n";
echo "COUNT_RECURSIVE mode: ";
var_dump( sizeof($int_array, COUNT_RECURSIVE) );
echo "\n";
echo "-- Testing sizeof() with string array in default, COUNT_NORMAL,
COUNT_RECURSIVE modes --\n";
echo "default mode: ";
var_dump( sizeof($string_array) );
echo "\n";
echo "COUNT_NORMAL mode: ";
var_dump( sizeof($string_array, COUNT_NORMAL) );
echo "\n";
echo "COUNT_RECURSIVE mode: ";
var_dump( sizeof($string_array, COUNT_RECURSIVE) );
echo "\n";
echo "-- Testing sizeof() with indexed array in default, COUNT_NORMAL,
COUNT_RECURSIVE modes --\n";
echo "default mode: ";
var_dump( sizeof($indexed_array) );
echo "\n";
echo "COUNT_NORMAL mode: ";
var_dump( sizeof($indexed_array, COUNT_NORMAL) );
echo "\n";
echo "COUNT_RECURSIVE mode: ";
var_dump( sizeof($indexed_array, COUNT_RECURSIVE) );
echo "\n";
echo "-- Testing sizeof() with mixed array in default, COUNT_NORMAL,
COUNT_RECURSIVE modes --\n";
echo "default mode: ";
var_dump( sizeof($mixed_array) );
echo "\n";
echo "COUNT_NORMAL mode: ";
var_dump( sizeof($mixed_array, COUNT_NORMAL) );
echo "\n";
echo "COUNT_RECURSIVE mode: ";
var_dump( sizeof($mixed_array, COUNT_RECURSIVE) );
echo "Done";
?>
--EXPECTF--
*** Testing sizeof() : basic functionality ***
-- Testing sizeof() with integer array in default, COUNT_NORMAL,
COUNT_RECURSIVE modes --
default mode: int(4)
COUNT_NORMAL mode: int(4)
COUNT_RECURSIVE mode: int(4)
-- Testing sizeof() with string array in default, COUNT_NORMAL, COUNT_RECURSIVE
modes --
default mode: int(3)
COUNT_NORMAL mode: int(3)
COUNT_RECURSIVE mode: int(3)
-- Testing sizeof() with indexed array in default, COUNT_NORMAL,
COUNT_RECURSIVE modes --
default mode: int(3)
COUNT_NORMAL mode: int(3)
COUNT_RECURSIVE mode: int(3)
-- Testing sizeof() with mixed array in default, COUNT_NORMAL, COUNT_RECURSIVE
modes --
default mode: int(5)
COUNT_NORMAL mode: int(5)
COUNT_RECURSIVE mode: int(5)
Done
--UEXPECTF--
*** Testing sizeof() : basic functionality ***
-- Testing sizeof() with integer array in default, COUNT_NORMAL,
COUNT_RECURSIVE modes --
default mode: int(4)
COUNT_NORMAL mode: int(4)
COUNT_RECURSIVE mode: int(4)
-- Testing sizeof() with string array in default, COUNT_NORMAL, COUNT_RECURSIVE
modes --
default mode: int(3)
COUNT_NORMAL mode: int(3)
COUNT_RECURSIVE mode: int(3)
-- Testing sizeof() with indexed array in default, COUNT_NORMAL,
COUNT_RECURSIVE modes --
default mode: int(3)
COUNT_NORMAL mode: int(3)
COUNT_RECURSIVE mode: int(3)
-- Testing sizeof() with mixed array in default, COUNT_NORMAL, COUNT_RECURSIVE
modes --
default mode: int(5)
COUNT_NORMAL mode: int(5)
COUNT_RECURSIVE mode: int(5)
Done
http://cvs.php.net/viewvc.cgi/php-src/ext/standard/tests/array/sizeof_error.phpt?view=markup&rev=1.1
Index: php-src/ext/standard/tests/array/sizeof_error.phpt
+++ php-src/ext/standard/tests/array/sizeof_error.phpt
--TEST--
Test sizeof() function : error conditions
--FILE--
<?php
/* Prototype : int sizeof(mixed $var[, int $mode] )
* Description: Counts an elements in an array. If Standard PHP Library is
installed,
* it will return the properties of an object.
* Source code: ext/standard/basic_functions.c
* Alias to functions: count()
*/
// Calling sizeof() with zero and more than expected arguments .
echo "*** Testing sizeof() : error conditions ***\n";
echo "-- Testing sizeof() with zero arguments --\n";
var_dump( sizeof() );
echo "-- Testing sizeof() function with more than two arguments under
COUNT_NORMAL mode --\n";
$var = 100;
$extra_arg = 10;;
var_dump( sizeof($var, COUNT_NORMAL, $extra_arg) );
echo "-- Testing sizeof() function with more than two arguments under
COUNT_RECURSIVE mode --\n";
var_dump( sizeof($var, COUNT_RECURSIVE, $extra_arg) );
echo "Done";
?>
--EXPECTF--
*** Testing sizeof() : error conditions ***
-- Testing sizeof() with zero arguments --
Warning: sizeof() expects at least 1 parameter, 0 given in %s on line %d
NULL
-- Testing sizeof() function with more than two arguments under COUNT_NORMAL
mode --
Warning: sizeof() expects at most 2 parameters, 3 given in %s on line %d
NULL
-- Testing sizeof() function with more than two arguments under COUNT_RECURSIVE
mode --
Warning: sizeof() expects at most 2 parameters, 3 given in %s on line %d
NULL
Done
--UEXPECTF--
*** Testing sizeof() : error conditions ***
-- Testing sizeof() with zero arguments --
Warning: sizeof() expects at least 1 parameter, 0 given in %s on line %d
NULL
-- Testing sizeof() function with more than two arguments under COUNT_NORMAL
mode --
Warning: sizeof() expects at most 2 parameters, 3 given in %s on line %d
NULL
-- Testing sizeof() function with more than two arguments under COUNT_RECURSIVE
mode --
Warning: sizeof() expects at most 2 parameters, 3 given in %s on line %d
NULL
Done
http://cvs.php.net/viewvc.cgi/php-src/ext/standard/tests/array/sizeof_variation1.phpt?view=markup&rev=1.1
Index: php-src/ext/standard/tests/array/sizeof_variation1.phpt
+++ php-src/ext/standard/tests/array/sizeof_variation1.phpt
--TEST--
Test sizeof() function : usage variations - for all scalar types and resource
variable
--FILE--
<?php
/* Prototype : int sizeof($mixed var[, int $mode])
* Description: Counts an elements in an array. If Standard PHP library is
installed,
* it will return the properties of an object.
* Source code: ext/standard/basic_functions.c
* Alias to functions: count()
*/
echo "*** Testing sizeof() : usage variations ***\n";
echo "--- Testing sizeof() for all scalar types in default,COUNT_NORMAL and
COUNT_RECURSIVE mode ---\n";
// get a resource variable
$fp = fopen(__FILE__, "r");
// array containing all scalar types
$values = array (
// int values
/* 1 */ 0,
1,
// float values
/* 3 */ 10.5,
-10.5,
12.3456789000e10,
12.3456789000E-10,
/* 7 */ .5,
// NULL values
/* 8 */ NULL,
null,
// boolean values
/* 10 */ TRUE,
FALSE,
true,
/* 13 */ false,
// string data
/* 14 */ "",
'',
"string",
/* 17 */ 'string',
// undefined variable
@$undefined_var,
// resource variable
/* 19 */ $fp
);
// loop through the each value of the array for 'var' argument and check the
behaviour of sizeof()
$counter = 1;
for($i = 0; $i < count($values); $i++)
{
echo "-- Iteration $counter --\n";
$var = $values[$i];
echo "Default Mode: ";
var_dump( sizeof($var) );
echo "\n";
echo "COUNT_NORMAL Mode: ";
var_dump( sizeof($var, COUNT_NORMAL) );
echo "\n";
echo "COUNT_RECURSIVE Mode: ";
var_dump( sizeof($var, COUNT_RECURSIVE) );
echo "\n";
$counter++;
}
echo "Done";
?>
--EXPECTF--
*** Testing sizeof() : usage variations ***
--- Testing sizeof() for all scalar types in default,COUNT_NORMAL and
COUNT_RECURSIVE mode ---
-- Iteration 1 --
Default Mode: int(1)
COUNT_NORMAL Mode: int(1)
COUNT_RECURSIVE Mode: int(1)
-- Iteration 2 --
Default Mode: int(1)
COUNT_NORMAL Mode: int(1)
COUNT_RECURSIVE Mode: int(1)
-- Iteration 3 --
Default Mode: int(1)
COUNT_NORMAL Mode: int(1)
COUNT_RECURSIVE Mode: int(1)
-- Iteration 4 --
Default Mode: int(1)
COUNT_NORMAL Mode: int(1)
COUNT_RECURSIVE Mode: int(1)
-- Iteration 5 --
Default Mode: int(1)
COUNT_NORMAL Mode: int(1)
COUNT_RECURSIVE Mode: int(1)
-- Iteration 6 --
Default Mode: int(1)
COUNT_NORMAL Mode: int(1)
COUNT_RECURSIVE Mode: int(1)
-- Iteration 7 --
Default Mode: int(1)
COUNT_NORMAL Mode: int(1)
COUNT_RECURSIVE Mode: int(1)
-- Iteration 8 --
Default Mode: int(0)
COUNT_NORMAL Mode: int(0)
COUNT_RECURSIVE Mode: int(0)
-- Iteration 9 --
Default Mode: int(0)
COUNT_NORMAL Mode: int(0)
COUNT_RECURSIVE Mode: int(0)
-- Iteration 10 --
Default Mode: int(1)
COUNT_NORMAL Mode: int(1)
COUNT_RECURSIVE Mode: int(1)
-- Iteration 11 --
Default Mode: int(1)
COUNT_NORMAL Mode: int(1)
COUNT_RECURSIVE Mode: int(1)
-- Iteration 12 --
Default Mode: int(1)
COUNT_NORMAL Mode: int(1)
COUNT_RECURSIVE Mode: int(1)
-- Iteration 13 --
Default Mode: int(1)
COUNT_NORMAL Mode: int(1)
COUNT_RECURSIVE Mode: int(1)
-- Iteration 14 --
Default Mode: int(1)
COUNT_NORMAL Mode: int(1)
COUNT_RECURSIVE Mode: int(1)
-- Iteration 15 --
Default Mode: int(1)
COUNT_NORMAL Mode: int(1)
COUNT_RECURSIVE Mode: int(1)
-- Iteration 16 --
Default Mode: int(1)
COUNT_NORMAL Mode: int(1)
COUNT_RECURSIVE Mode: int(1)
-- Iteration 17 --
Default Mode: int(1)
COUNT_NORMAL Mode: int(1)
COUNT_RECURSIVE Mode: int(1)
-- Iteration 18 --
Default Mode: int(0)
COUNT_NORMAL Mode: int(0)
COUNT_RECURSIVE Mode: int(0)
-- Iteration 19 --
Default Mode: int(1)
COUNT_NORMAL Mode: int(1)
COUNT_RECURSIVE Mode: int(1)
Done
--UEXPECTF--
*** Testing sizeof() : usage variations ***
--- Testing sizeof() for all scalar types in default,COUNT_NORMAL and
COUNT_RECURSIVE mode ---
-- Iteration 1 --
Default Mode: int(1)
COUNT_NORMAL Mode: int(1)
COUNT_RECURSIVE Mode: int(1)
-- Iteration 2 --
Default Mode: int(1)
COUNT_NORMAL Mode: int(1)
COUNT_RECURSIVE Mode: int(1)
-- Iteration 3 --
Default Mode: int(1)
COUNT_NORMAL Mode: int(1)
COUNT_RECURSIVE Mode: int(1)
-- Iteration 4 --
Default Mode: int(1)
COUNT_NORMAL Mode: int(1)
COUNT_RECURSIVE Mode: int(1)
-- Iteration 5 --
Default Mode: int(1)
COUNT_NORMAL Mode: int(1)
COUNT_RECURSIVE Mode: int(1)
-- Iteration 6 --
Default Mode: int(1)
COUNT_NORMAL Mode: int(1)
COUNT_RECURSIVE Mode: int(1)
-- Iteration 7 --
Default Mode: int(1)
COUNT_NORMAL Mode: int(1)
COUNT_RECURSIVE Mode: int(1)
-- Iteration 8 --
Default Mode: int(0)
COUNT_NORMAL Mode: int(0)
COUNT_RECURSIVE Mode: int(0)
-- Iteration 9 --
Default Mode: int(0)
COUNT_NORMAL Mode: int(0)
COUNT_RECURSIVE Mode: int(0)
-- Iteration 10 --
Default Mode: int(1)
COUNT_NORMAL Mode: int(1)
COUNT_RECURSIVE Mode: int(1)
-- Iteration 11 --
Default Mode: int(1)
COUNT_NORMAL Mode: int(1)
COUNT_RECURSIVE Mode: int(1)
-- Iteration 12 --
Default Mode: int(1)
COUNT_NORMAL Mode: int(1)
COUNT_RECURSIVE Mode: int(1)
-- Iteration 13 --
Default Mode: int(1)
COUNT_NORMAL Mode: int(1)
COUNT_RECURSIVE Mode: int(1)
-- Iteration 14 --
Default Mode: int(1)
COUNT_NORMAL Mode: int(1)
COUNT_RECURSIVE Mode: int(1)
-- Iteration 15 --
Default Mode: int(1)
COUNT_NORMAL Mode: int(1)
COUNT_RECURSIVE Mode: int(1)
-- Iteration 16 --
Default Mode: int(1)
COUNT_NORMAL Mode: int(1)
COUNT_RECURSIVE Mode: int(1)
-- Iteration 17 --
Default Mode: int(1)
COUNT_NORMAL Mode: int(1)
COUNT_RECURSIVE Mode: int(1)
-- Iteration 18 --
Default Mode: int(0)
COUNT_NORMAL Mode: int(0)
COUNT_RECURSIVE Mode: int(0)
-- Iteration 19 --
Default Mode: int(1)
COUNT_NORMAL Mode: int(1)
COUNT_RECURSIVE Mode: int(1)
Done
http://cvs.php.net/viewvc.cgi/php-src/ext/standard/tests/array/sizeof_variation2.phpt?view=markup&rev=1.1
Index: php-src/ext/standard/tests/array/sizeof_variation2.phpt
+++ php-src/ext/standard/tests/array/sizeof_variation2.phpt
--TEST--
Test sizeof() function : usage variations - different array values for 'var'
argument
--FILE--
<?php
/* Prototype : int sizeof($mixed var[, int $mode])
* Description: Counts an elements in an array. If Standard PHP library is
installed,
* it will return the properties of an object.
* Source code: ext/standard/basic_functions.c
* Alias to functions: count()
*/
echo "*** Testing sizeof() : usage variations ***\n";
// get a resource variable
$fp = fopen(__FILE__, "r");
echo "--- Testing sizeof() with different array values for 'var' argument
---\n";
// array containing different types of array values for 'var' argument
$values = array (
/* 1 */ array($fp, "resource" => $fp),
array(1, array(3, 4, array(6, array(8)))),
array("a" => 1, 'b' => 2, array( "c" =>3, array( "d" => 5))),
array(),
/* 5 */ array(1, 2, 3, 4),
array("Saffron", "White", "Green"),
array('saffron', 'white', 'green'),
array(1 => "Hi", 2 => "Hello" ),
array("color" => "red", "item" => "pen"),
/* 10 */ array('color' => 'red', 'item' => 'pen'),
array(TRUE => "red", FALSE => "pen" ),
array(false => 'red', true => 'pen' ),
array('color' => "red", "item" => 'pen', 1 => "Hi", "" => "Hello" ),
/* 14 */ array($fp, "resource1" => $fp, 'resource2' => $fp, array( $fp,
'type' => $fp) )
);
// loop through each element of the values array for 'var' argument
// check the working of sizeof()
$counter = 1;
for($i = 0; $i < count($values); $i++)
{
echo "-- Iteration $counter --\n";
$var = $values[$i];
echo "Default Mode: ";
var_dump( sizeof($var) );
echo "\n";
echo "COUNT_NORMAL Mode: ";
var_dump( sizeof($var, COUNT_NORMAL) );
echo "\n";
echo "COUNT_RECURSIVE Mode: ";
var_dump( sizeof($var, COUNT_RECURSIVE) );
echo "\n";
$counter++;
}
echo "Done";
?>
--EXPECTF--
*** Testing sizeof() : usage variations ***
--- Testing sizeof() with different array values for 'var' argument ---
-- Iteration 1 --
Default Mode: int(2)
COUNT_NORMAL Mode: int(2)
COUNT_RECURSIVE Mode: int(2)
-- Iteration 2 --
Default Mode: int(2)
COUNT_NORMAL Mode: int(2)
COUNT_RECURSIVE Mode: int(8)
-- Iteration 3 --
Default Mode: int(3)
COUNT_NORMAL Mode: int(3)
COUNT_RECURSIVE Mode: int(6)
-- Iteration 4 --
Default Mode: int(0)
COUNT_NORMAL Mode: int(0)
COUNT_RECURSIVE Mode: int(0)
-- Iteration 5 --
Default Mode: int(4)
COUNT_NORMAL Mode: int(4)
COUNT_RECURSIVE Mode: int(4)
-- Iteration 6 --
Default Mode: int(3)
COUNT_NORMAL Mode: int(3)
COUNT_RECURSIVE Mode: int(3)
-- Iteration 7 --
Default Mode: int(3)
COUNT_NORMAL Mode: int(3)
COUNT_RECURSIVE Mode: int(3)
-- Iteration 8 --
Default Mode: int(2)
COUNT_NORMAL Mode: int(2)
COUNT_RECURSIVE Mode: int(2)
-- Iteration 9 --
Default Mode: int(2)
COUNT_NORMAL Mode: int(2)
COUNT_RECURSIVE Mode: int(2)
-- Iteration 10 --
Default Mode: int(2)
COUNT_NORMAL Mode: int(2)
COUNT_RECURSIVE Mode: int(2)
-- Iteration 11 --
Default Mode: int(2)
COUNT_NORMAL Mode: int(2)
COUNT_RECURSIVE Mode: int(2)
-- Iteration 12 --
Default Mode: int(2)
COUNT_NORMAL Mode: int(2)
COUNT_RECURSIVE Mode: int(2)
-- Iteration 13 --
Default Mode: int(4)
COUNT_NORMAL Mode: int(4)
COUNT_RECURSIVE Mode: int(4)
-- Iteration 14 --
Default Mode: int(4)
COUNT_NORMAL Mode: int(4)
COUNT_RECURSIVE Mode: int(6)
Done
--UEXPECTF--
*** Testing sizeof() : usage variations ***
--- Testing sizeof() with different array values for 'var' argument ---
-- Iteration 1 --
Default Mode: int(2)
COUNT_NORMAL Mode: int(2)
COUNT_RECURSIVE Mode: int(2)
-- Iteration 2 --
Default Mode: int(2)
COUNT_NORMAL Mode: int(2)
COUNT_RECURSIVE Mode: int(8)
-- Iteration 3 --
Default Mode: int(3)
COUNT_NORMAL Mode: int(3)
COUNT_RECURSIVE Mode: int(6)
-- Iteration 4 --
Default Mode: int(0)
COUNT_NORMAL Mode: int(0)
COUNT_RECURSIVE Mode: int(0)
-- Iteration 5 --
Default Mode: int(4)
COUNT_NORMAL Mode: int(4)
COUNT_RECURSIVE Mode: int(4)
-- Iteration 6 --
Default Mode: int(3)
COUNT_NORMAL Mode: int(3)
COUNT_RECURSIVE Mode: int(3)
-- Iteration 7 --
Default Mode: int(3)
COUNT_NORMAL Mode: int(3)
COUNT_RECURSIVE Mode: int(3)
-- Iteration 8 --
Default Mode: int(2)
COUNT_NORMAL Mode: int(2)
COUNT_RECURSIVE Mode: int(2)
-- Iteration 9 --
Default Mode: int(2)
COUNT_NORMAL Mode: int(2)
COUNT_RECURSIVE Mode: int(2)
-- Iteration 10 --
Default Mode: int(2)
COUNT_NORMAL Mode: int(2)
COUNT_RECURSIVE Mode: int(2)
-- Iteration 11 --
Default Mode: int(2)
COUNT_NORMAL Mode: int(2)
COUNT_RECURSIVE Mode: int(2)
-- Iteration 12 --
Default Mode: int(2)
COUNT_NORMAL Mode: int(2)
COUNT_RECURSIVE Mode: int(2)
-- Iteration 13 --
Default Mode: int(4)
COUNT_NORMAL Mode: int(4)
COUNT_RECURSIVE Mode: int(4)
-- Iteration 14 --
Default Mode: int(4)
COUNT_NORMAL Mode: int(4)
COUNT_RECURSIVE Mode: int(6)
Done
http://cvs.php.net/viewvc.cgi/php-src/ext/standard/tests/array/sizeof_variation3.phpt?view=markup&rev=1.1
Index: php-src/ext/standard/tests/array/sizeof_variation3.phpt
+++ php-src/ext/standard/tests/array/sizeof_variation3.phpt
--TEST--
Test sizeof() function : usage variations - checking for infinite recursion in
COUNT_RECURSIVE mode
--FILE--
<?php
/* Prototype : int sizeof($mixed var[, int $mode])
* Description: Counts an elements in an array. If Standard PHP library is
installed,
* it will return the properties of an object.
* Source code: ext/standard/basic_functions.c
* Alias to functions: count()
*/
echo "*** Testing sizeof() : usage variations ***\n";
echo "-- Testing sizeof() for infinite recursion with arrays as argument in
COUNT_RECURSIVE mode --\n";
$array2 = array ( "Hi", "Hello",@$a);
$array3 = array( 'hi', 'hello');
$a = array ( 1, @$array1, $array2, $array3);
$array1 = array( array(1, 2), $a);
$array4 = array( 100, @$array4);
var_dump( sizeof($array1, COUNT_RECURSIVE) );
echo "\n";
var_dump( sizeof($array4, COUNT_RECURSIVE) );
echo "Done";
?>
--EXPECTF--
*** Testing sizeof() : usage variations ***
-- Testing sizeof() for infinite recursion with arrays as argument in
COUNT_RECURSIVE mode --
int(13)
int(2)
Done
--UEXPECTF--
*** Testing sizeof() : usage variations ***
-- Testing sizeof() for infinite recursion with arrays as argument in
COUNT_RECURSIVE mode --
int(13)
int(2)
Done
http://cvs.php.net/viewvc.cgi/php-src/ext/standard/tests/array/sizeof_variation4.phpt?view=markup&rev=1.1
Index: php-src/ext/standard/tests/array/sizeof_variation4.phpt
+++ php-src/ext/standard/tests/array/sizeof_variation4.phpt
--TEST--
Test sizeof() function : usage variations - all kinds of unset variables for
'var' argument
--FILE--
<?php
/* Prototype : int sizeof($mixed var[, int $mode])
* Description: Counts an elements in an array. If Standard PHP library is
installed,
* it will return the properties of an object.
* Source code: ext/standard/basic_functions.c
* Alias to functions: count()
*/
echo "*** Testing sizeof() : usage variations ***\n";
echo "--- Testing sizeof() for all kinds of unset variables in default, Normal
and Recursive Modes ---\n";
// class declaration
class test
{
public $member1;
}
// get an resource variable
$fp = fopen(__FILE__, "r");
// array containing different types of variables
$values = array (
// int values
/* 1 */ 0,
1,
// float values
/* 3 */ 10.5,
-10.5,
12.34e3,
/* 6 */ 12.34E-3,
// string values
/* 7 */ "string",
'string',
"",
/* 10 */ '',
// NULL values
/* 11 */ NULL,
null,
// Boolean Values
/* 12 */ TRUE,
true,
false,
/* 16 */ FALSE,
// array values
/* 17 */ array(),
array(1, 2, 3,4 , array(5, 6)),
// object variable
/* 19 */ new test(),
// resource variable
/* 20 */ $fp
);
// loop through the each element of the $values array for 'var' arugment
// and check the functionality of sizeof()
$counter = 1;
foreach($values as $value)
{
echo "-- Iteration $counter --\n";
// unset the variable
unset($value);
// now check the size of unset variable when different modes are given
echo "Default Mode: ";
var_dump( sizeof($value) );
echo "\n";
echo "COUNT_NORMAL Mode: ";
var_dump( sizeof($value, COUNT_NORMAL) );
echo "\n";
echo "COUNT_RECURSIVE Mode: ";
var_dump( sizeof($value, COUNT_RECURSIVE) );
echo "\n";
$counter++;
}
fclose($fp);
echo "Done";
?>
--EXPECTF--
*** Testing sizeof() : usage variations ***
--- Testing sizeof() for all kinds of unset variables in default, Normal and
Recursive Modes ---
-- Iteration 1 --
Default Mode:
Notice: Undefined variable: value in %s on line %d
int(0)
COUNT_NORMAL Mode:
Notice: Undefined variable: value in %s on line %d
int(0)
COUNT_RECURSIVE Mode:
Notice: Undefined variable: value in %s on line %d
int(0)
-- Iteration 2 --
Default Mode:
Notice: Undefined variable: value in %s on line %d
int(0)
COUNT_NORMAL Mode:
Notice: Undefined variable: value in %s on line %d
int(0)
COUNT_RECURSIVE Mode:
Notice: Undefined variable: value in %s on line %d
int(0)
-- Iteration 3 --
Default Mode:
Notice: Undefined variable: value in %s on line %d
int(0)
COUNT_NORMAL Mode:
Notice: Undefined variable: value in %s on line %d
int(0)
COUNT_RECURSIVE Mode:
Notice: Undefined variable: value in %s on line %d
int(0)
-- Iteration 4 --
Default Mode:
Notice: Undefined variable: value in %s on line %d
int(0)
COUNT_NORMAL Mode:
Notice: Undefined variable: value in %s on line %d
int(0)
COUNT_RECURSIVE Mode:
Notice: Undefined variable: value in %s on line %d
int(0)
-- Iteration 5 --
Default Mode:
Notice: Undefined variable: value in %s on line %d
int(0)
COUNT_NORMAL Mode:
Notice: Undefined variable: value in %s on line %d
int(0)
COUNT_RECURSIVE Mode:
Notice: Undefined variable: value in %s on line %d
int(0)
-- Iteration 6 --
Default Mode:
Notice: Undefined variable: value in %s on line %d
int(0)
COUNT_NORMAL Mode:
Notice: Undefined variable: value in %s on line %d
int(0)
COUNT_RECURSIVE Mode:
Notice: Undefined variable: value in %s on line %d
int(0)
-- Iteration 7 --
Default Mode:
Notice: Undefined variable: value in %s on line %d
int(0)
COUNT_NORMAL Mode:
Notice: Undefined variable: value in %s on line %d
int(0)
COUNT_RECURSIVE Mode:
Notice: Undefined variable: value in %s on line %d
int(0)
-- Iteration 8 --
Default Mode:
Notice: Undefined variable: value in %s on line %d
int(0)
COUNT_NORMAL Mode:
Notice: Undefined variable: value in %s on line %d
int(0)
COUNT_RECURSIVE Mode:
Notice: Undefined variable: value in %s on line %d
int(0)
-- Iteration 9 --
Default Mode:
Notice: Undefined variable: value in %s on line %d
int(0)
COUNT_NORMAL Mode:
Notice: Undefined variable: value in %s on line %d
int(0)
COUNT_RECURSIVE Mode:
Notice: Undefined variable: value in %s on line %d
int(0)
-- Iteration 10 --
Default Mode:
Notice: Undefined variable: value in %s on line %d
int(0)
COUNT_NORMAL Mode:
Notice: Undefined variable: value in %s on line %d
int(0)
COUNT_RECURSIVE Mode:
Notice: Undefined variable: value in %s on line %d
int(0)
-- Iteration 11 --
Default Mode:
Notice: Undefined variable: value in %s on line %d
int(0)
COUNT_NORMAL Mode:
Notice: Undefined variable: value in %s on line %d
int(0)
COUNT_RECURSIVE Mode:
Notice: Undefined variable: value in %s on line %d
int(0)
-- Iteration 12 --
Default Mode:
Notice: Undefined variable: value in %s on line %d
int(0)
COUNT_NORMAL Mode:
Notice: Undefined variable: value in %s on line %d
int(0)
COUNT_RECURSIVE Mode:
Notice: Undefined variable: value in %s on line %d
int(0)
-- Iteration 13 --
Default Mode:
Notice: Undefined variable: value in %s on line %d
int(0)
COUNT_NORMAL Mode:
Notice: Undefined variable: value in %s on line %d
int(0)
COUNT_RECURSIVE Mode:
Notice: Undefined variable: value in %s on line %d
int(0)
-- Iteration 14 --
Default Mode:
Notice: Undefined variable: value in %s on line %d
int(0)
COUNT_NORMAL Mode:
Notice: Undefined variable: value in %s on line %d
int(0)
COUNT_RECURSIVE Mode:
Notice: Undefined variable: value in %s on line %d
int(0)
-- Iteration 15 --
Default Mode:
Notice: Undefined variable: value in %s on line %d
int(0)
COUNT_NORMAL Mode:
Notice: Undefined variable: value in %s on line %d
int(0)
COUNT_RECURSIVE Mode:
Notice: Undefined variable: value in %s on line %d
int(0)
-- Iteration 16 --
Default Mode:
Notice: Undefined variable: value in %s on line %d
int(0)
COUNT_NORMAL Mode:
Notice: Undefined variable: value in %s on line %d
int(0)
COUNT_RECURSIVE Mode:
Notice: Undefined variable: value in %s on line %d
int(0)
-- Iteration 17 --
Default Mode:
Notice: Undefined variable: value in %s on line %d
int(0)
COUNT_NORMAL Mode:
Notice: Undefined variable: value in %s on line %d
int(0)
COUNT_RECURSIVE Mode:
Notice: Undefined variable: value in %s on line %d
int(0)
-- Iteration 18 --
Default Mode:
Notice: Undefined variable: value in %s on line %d
int(0)
COUNT_NORMAL Mode:
Notice: Undefined variable: value in %s on line %d
int(0)
COUNT_RECURSIVE Mode:
Notice: Undefined variable: value in %s on line %d
int(0)
-- Iteration 19 --
Default Mode:
Notice: Undefined variable: value in %s on line %d
int(0)
COUNT_NORMAL Mode:
Notice: Undefined variable: value in %s on line %d
int(0)
COUNT_RECURSIVE Mode:
Notice: Undefined variable: value in %s on line %d
int(0)
-- Iteration 20 --
Default Mode:
Notice: Undefined variable: value in %s on line %d
int(0)
COUNT_NORMAL Mode:
Notice: Undefined variable: value in %s on line %d
int(0)
COUNT_RECURSIVE Mode:
Notice: Undefined variable: value in %s on line %d
int(0)
Done
--UEXPECTF--
*** Testing sizeof() : usage variations ***
--- Testing sizeof() for all kinds of unset variables in default, Normal and
Recursive Modes ---
-- Iteration 1 --
Default Mode:
Notice: Undefined variable: value in %s on line %d
int(0)
COUNT_NORMAL Mode:
Notice: Undefined variable: value in %s on line %d
int(0)
COUNT_RECURSIVE Mode:
Notice: Undefined variable: value in %s on line %d
int(0)
-- Iteration 2 --
Default Mode:
Notice: Undefined variable: value in %s on line %d
int(0)
COUNT_NORMAL Mode:
Notice: Undefined variable: value in %s on line %d
int(0)
COUNT_RECURSIVE Mode:
Notice: Undefined variable: value in %s on line %d
int(0)
-- Iteration 3 --
Default Mode:
Notice: Undefined variable: value in %s on line %d
int(0)
COUNT_NORMAL Mode:
Notice: Undefined variable: value in %s on line %d
int(0)
COUNT_RECURSIVE Mode:
Notice: Undefined variable: value in %s on line %d
int(0)
-- Iteration 4 --
Default Mode:
Notice: Undefined variable: value in %s on line %d
int(0)
COUNT_NORMAL Mode:
Notice: Undefined variable: value in %s on line %d
int(0)
COUNT_RECURSIVE Mode:
Notice: Undefined variable: value in %s on line %d
int(0)
-- Iteration 5 --
Default Mode:
Notice: Undefined variable: value in %s on line %d
int(0)
COUNT_NORMAL Mode:
Notice: Undefined variable: value in %s on line %d
int(0)
COUNT_RECURSIVE Mode:
Notice: Undefined variable: value in %s on line %d
int(0)
-- Iteration 6 --
Default Mode:
Notice: Undefined variable: value in %s on line %d
int(0)
COUNT_NORMAL Mode:
Notice: Undefined variable: value in %s on line %d
int(0)
COUNT_RECURSIVE Mode:
Notice: Undefined variable: value in %s on line %d
int(0)
-- Iteration 7 --
Default Mode:
Notice: Undefined variable: value in %s on line %d
int(0)
COUNT_NORMAL Mode:
Notice: Undefined variable: value in %s on line %d
int(0)
COUNT_RECURSIVE Mode:
Notice: Undefined variable: value in %s on line %d
int(0)
-- Iteration 8 --
Default Mode:
Notice: Undefined variable: value in %s on line %d
int(0)
COUNT_NORMAL Mode:
Notice: Undefined variable: value in %s on line %d
int(0)
COUNT_RECURSIVE Mode:
Notice: Undefined variable: value in %s on line %d
int(0)
-- Iteration 9 --
Default Mode:
Notice: Undefined variable: value in %s on line %d
int(0)
COUNT_NORMAL Mode:
Notice: Undefined variable: value in %s on line %d
int(0)
COUNT_RECURSIVE Mode:
Notice: Undefined variable: value in %s on line %d
int(0)
-- Iteration 10 --
Default Mode:
Notice: Undefined variable: value in %s on line %d
int(0)
COUNT_NORMAL Mode:
Notice: Undefined variable: value in %s on line %d
int(0)
COUNT_RECURSIVE Mode:
Notice: Undefined variable: value in %s on line %d
int(0)
-- Iteration 11 --
Default Mode:
Notice: Undefined variable: value in %s on line %d
int(0)
COUNT_NORMAL Mode:
Notice: Undefined variable: value in %s on line %d
int(0)
COUNT_RECURSIVE Mode:
Notice: Undefined variable: value in %s on line %d
int(0)
-- Iteration 12 --
Default Mode:
Notice: Undefined variable: value in %s on line %d
int(0)
COUNT_NORMAL Mode:
Notice: Undefined variable: value in %s on line %d
int(0)
COUNT_RECURSIVE Mode:
Notice: Undefined variable: value in %s on line %d
int(0)
-- Iteration 13 --
Default Mode:
Notice: Undefined variable: value in %s on line %d
int(0)
COUNT_NORMAL Mode:
Notice: Undefined variable: value in %s on line %d
int(0)
COUNT_RECURSIVE Mode:
Notice: Undefined variable: value in %s on line %d
int(0)
-- Iteration 14 --
Default Mode:
Notice: Undefined variable: value in %s on line %d
int(0)
COUNT_NORMAL Mode:
Notice: Undefined variable: value in %s on line %d
int(0)
COUNT_RECURSIVE Mode:
Notice: Undefined variable: value in %s on line %d
int(0)
-- Iteration 15 --
Default Mode:
Notice: Undefined variable: value in %s on line %d
int(0)
COUNT_NORMAL Mode:
Notice: Undefined variable: value in %s on line %d
int(0)
COUNT_RECURSIVE Mode:
Notice: Undefined variable: value in %s on line %d
int(0)
-- Iteration 16 --
Default Mode:
Notice: Undefined variable: value in %s on line %d
int(0)
COUNT_NORMAL Mode:
Notice: Undefined variable: value in %s on line %d
int(0)
COUNT_RECURSIVE Mode:
Notice: Undefined variable: value in %s on line %d
int(0)
-- Iteration 17 --
Default Mode:
Notice: Undefined variable: value in %s on line %d
int(0)
COUNT_NORMAL Mode:
Notice: Undefined variable: value in %s on line %d
int(0)
COUNT_RECURSIVE Mode:
Notice: Undefined variable: value in %s on line %d
int(0)
-- Iteration 18 --
Default Mode:
Notice: Undefined variable: value in %s on line %d
int(0)
COUNT_NORMAL Mode:
Notice: Undefined variable: value in %s on line %d
int(0)
COUNT_RECURSIVE Mode:
Notice: Undefined variable: value in %s on line %d
int(0)
-- Iteration 19 --
Default Mode:
Notice: Undefined variable: value in %s on line %d
int(0)
COUNT_NORMAL Mode:
Notice: Undefined variable: value in %s on line %d
int(0)
COUNT_RECURSIVE Mode:
Notice: Undefined variable: value in %s on line %d
int(0)
-- Iteration 20 --
Default Mode:
Notice: Undefined variable: value in %s on line %d
int(0)
COUNT_NORMAL Mode:
Notice: Undefined variable: value in %s on line %d
int(0)
COUNT_RECURSIVE Mode:
Notice: Undefined variable: value in %s on line %d
int(0)
Done
http://cvs.php.net/viewvc.cgi/php-src/ext/standard/tests/array/sizeof_variation5.phpt?view=markup&rev=1.1
Index: php-src/ext/standard/tests/array/sizeof_variation5.phpt
+++ php-src/ext/standard/tests/array/sizeof_variation5.phpt
--TEST--
Test sizeof() function : usage variations - different values for 'mode'
argument
--FILE--
<?php
/* Prototype : int sizeof($mixed var[, int $mode])
* Description: Counts an elements in an array. If Standard PHP library is
installed,
* it will return the properties of an object.
* Source code: ext/standard/basic_functions.c
* Alias to functions: count()
*/
echo "*** Testing sizeof() : usage variations ***\n";
echo "--- Testing sizeof() with different values for 'mode' argument ---\n";
$array1 = array(1, 2, 3, 4, array(1.0, 2.0, array()), array() );
// get a resource variable
$fp = fopen(__FILE__, "r");
//unset variable
$unset_var = 10;
unset($unset_var);
//class declaration
class test
{
public $member1;
}
$mode_values = array (
/* 1 */ COUNT_NORMAL,
COUNT_RECURSIVE,
0, // same as COUNT_NORMAL
1, // same as COUNT_RECURSIVE
/* 5 */ TRUE, // same as COUNT_RECURSIVE
true, // same as COUNT_RECURSIVE
FALSE, // same as COUNT_NORMAL
false, // same as COUNT_NORMAL
NULL, // same as COUNT_NORMAL
/* 10 */ null, // same as COUNT_NORMAL
100,
10.5,
12.34e3,
12.34E-2,
/* 15 */ .5,
"",
'',
"string",
'string',
/* 20 */ @$unset_var,
new test(),
/* 22 */ $fp
);
// loop through the each element of $modes_array for 'mode' argument
// and check the working of sizeof()
$counter = 1;
for($i = 0; $i < count($mode_values); $i++)
{
echo "-- Iteration $counter --\n";
$mode = $mode_values[$i];
var_dump( sizeof($array1, $mode) );
$counter++;
}
fclose($fp);
echo "Done";
?>
--EXPECTF--
*** Testing sizeof() : usage variations ***
--- Testing sizeof() with different values for 'mode' argument ---
-- Iteration 1 --
int(6)
-- Iteration 2 --
int(9)
-- Iteration 3 --
int(6)
-- Iteration 4 --
int(9)
-- Iteration 5 --
int(9)
-- Iteration 6 --
int(9)
-- Iteration 7 --
int(6)
-- Iteration 8 --
int(6)
-- Iteration 9 --
int(6)
-- Iteration 10 --
int(6)
-- Iteration 11 --
int(6)
-- Iteration 12 --
int(6)
-- Iteration 13 --
int(6)
-- Iteration 14 --
int(6)
-- Iteration 15 --
int(6)
-- Iteration 16 --
Warning: sizeof() expects parameter 2 to be long, string given in %s on line %d
NULL
-- Iteration 17 --
Warning: sizeof() expects parameter 2 to be long, string given in %s on line %d
NULL
-- Iteration 18 --
Warning: sizeof() expects parameter 2 to be long, string given in %s on line %d
NULL
-- Iteration 19 --
Warning: sizeof() expects parameter 2 to be long, string given in %s on line %d
NULL
-- Iteration 20 --
int(6)
-- Iteration 21 --
Warning: sizeof() expects parameter 2 to be long, object given in %s on line %d
NULL
-- Iteration 22 --
Warning: sizeof() expects parameter 2 to be long, resource given in %s on line
%d
NULL
Done
--UEXPECTF--
*** Testing sizeof() : usage variations ***
--- Testing sizeof() with different values for 'mode' argument ---
-- Iteration 1 --
int(6)
-- Iteration 2 --
int(9)
-- Iteration 3 --
int(6)
-- Iteration 4 --
int(9)
-- Iteration 5 --
int(9)
-- Iteration 6 --
int(9)
-- Iteration 7 --
int(6)
-- Iteration 8 --
int(6)
-- Iteration 9 --
int(6)
-- Iteration 10 --
int(6)
-- Iteration 11 --
int(6)
-- Iteration 12 --
int(6)
-- Iteration 13 --
int(6)
-- Iteration 14 --
int(6)
-- Iteration 15 --
int(6)
-- Iteration 16 --
Warning: sizeof() expects parameter 2 to be long, Unicode string given in %s on
line %d
NULL
-- Iteration 17 --
Warning: sizeof() expects parameter 2 to be long, Unicode string given in %s on
line %d
NULL
-- Iteration 18 --
Warning: sizeof() expects parameter 2 to be long, Unicode string given in %s on
line %d
NULL
-- Iteration 19 --
Warning: sizeof() expects parameter 2 to be long, Unicode string given in %s on
line %d
NULL
-- Iteration 20 --
int(6)
-- Iteration 21 --
Warning: sizeof() expects parameter 2 to be long, object given in %s on line %d
NULL
-- Iteration 22 --
Warning: sizeof() expects parameter 2 to be long, resource given in %s on line
%d
NULL
Done
http://cvs.php.net/viewvc.cgi/php-src/ext/standard/tests/array/sizeof_object1.phpt?view=markup&rev=1.1
Index: php-src/ext/standard/tests/array/sizeof_object1.phpt
+++ php-src/ext/standard/tests/array/sizeof_object1.phpt
--TEST--
Test sizeof() function : objects - object with Countable interface
--SKIPIF--
<?php
// Skip the test case if Standard PHP Library(spl) is not installed
if( !extension_loaded('spl') )
{
die('skip SPL not installed');
}
?>
--FILE--
<?php
/* Prototype : int sizeof($mixed var[, int $mode])
* Description: Counts an elements in an array. If Standard PHP library is
installed,
* it will return the properties of an object.
* Source code: ext/standard/basic_functions.c
* Alias to functions: count()
*/
echo "*** Testing sizeof() with object functionality ***\n";
echo "-- Testing sizeof() with an object which implements Countable interface
--\n";
class sizeof_class implements Countable
{
public $member1;
private $member2;
protected $member3;
public function count()
{
return 3; // return the count of member variables in the object
}
}
$obj = new sizeof_class();
echo "-- Testing sizeof() in default mode --\n";
var_dump( sizeof($obj) );
echo "-- Testing sizeof() in COUNT_NORMAL mode --\n";
var_dump( sizeof($obj, COUNT_NORMAL) );
echo "-- Testing sizeof() in COUNT_RECURSIVE mode --\n";
var_dump( sizeof($obj, COUNT_RECURSIVE) );
echo "Done";
?>
--EXPECTF--
*** Testing sizeof() with object functionality ***
-- Testing sizeof() with an object which implements Countable interface --
-- Testing sizeof() in default mode --
int(3)
-- Testing sizeof() in COUNT_NORMAL mode --
int(3)
-- Testing sizeof() in COUNT_RECURSIVE mode --
int(3)
Done
--UEXPECTF--
*** Testing sizeof() with object functionality ***
-- Testing sizeof() with an object which implements Countable interface --
-- Testing sizeof() in default mode --
int(3)
-- Testing sizeof() in COUNT_NORMAL mode --
int(3)
-- Testing sizeof() in COUNT_RECURSIVE mode --
int(3)
Done
--
PHP CVS Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php