cvs: php-src /ext/standard/tests/array array_merge.phpt array_values.phpt end.phpt /ext/standard/tests/general_functions debug_zval_dump_b.phpt
print_r.phpt strval.phpt var_dump.phpt /ext/standard/tests/strings addcslashes.phpt implode1.phpt str_repeat.phpt str_replace.phpt strpos.phpt
ucfirst1.phpt

From: Date: Mon, 14 May 2007 13:05:29 +0000
Subject: cvs: php-src /ext/standard/tests/array array_merge.phpt array_values.phpt end.phpt /ext/standard/tests/general_functions debug_zval_dump_b.phpt
print_r.phpt strval.phpt var_dump.phpt /ext/standard/tests/strings addcslashes.phpt implode1.phpt str_repeat.phpt str_replace.phpt strpos.phpt
ucfirst1.phpt
Groups: php.cvs 
Request: Send a blank email to php-cvs+get-44298@lists.php.net to get a copy of this message
tony2001 Mon May 14 13:05:29 2007 UTC Modified files: /php-src/ext/standard/tests/array array_merge.phpt array_values.phpt end.phpt /php-src/ext/standard/tests/general_functions debug_zval_dump_b.phpt print_r.phpt strval.phpt var_dump.phpt /php-src/ext/standard/tests/strings addcslashes.phpt implode1.phpt str_repeat.phpt str_replace.phpt strpos.phpt ucfirst1.phpt Log: fix tests, add UEXPECTF

http://cvs.php.net/viewvc.cgi/php-src/ext/standard/tests/array/array_merge.phpt?r1=1.2&r2=1.3&diff_format=u Index: php-src/ext/standard/tests/array/array_merge.phpt diff -u php-src/ext/standard/tests/array/array_merge.phpt:1.2 php-src/ext/standard/tests/array/array_merge.phpt:1.3 --- php-src/ext/standard/tests/array/array_merge.phpt:1.2 Fri Apr 20 21:13:45 2007 +++ php-src/ext/standard/tests/array/array_merge.phpt Mon May 14 13:05:28 2007 @@ -1,5 +1,7 @@ --TEST-- Test array_merge() function +--INI-- +precision=14 --FILE-- <?php /* Prototype: array array_merge(array $array1 [, array $array2 [, array $...]]); http://cvs.php.net/viewvc.cgi/php-src/ext/standard/tests/array/array_values.phpt?r1=1.2&r2=1.3&diff_format=u Index: php-src/ext/standard/tests/array/array_values.phpt http://cvs.php.net/viewvc.cgi/php-src/ext/standard/tests/array/end.phpt?r1=1.2&r2=1.3&diff_format=u Index: php-src/ext/standard/tests/array/end.phpt diff -u php-src/ext/standard/tests/array/end.phpt:1.2 php-src/ext/standard/tests/array/end.phpt:1.3 --- php-src/ext/standard/tests/array/end.phpt:1.2 Sat May 12 11:20:52 2007 +++ php-src/ext/standard/tests/array/end.phpt Mon May 14 13:05:28 2007 @@ -1,1787 +1,344 @@ --TEST-- -Test print_r() function +Test end() function +--SKIPIF-- +<?php +if (PHP_INT_SIZE != 4) die("skip this test is for 32bit platform only"); +?> +--INI-- +precision=14 --FILE-- - <?php -/* Prototype: bool print_r ( mixed $expression [, bool $return] ); - Description: Prints human-readable information about a variable +/* Prototype: mixed end ( array &$array ); + Description: Advances internal pointer of array to last element, and returns its value. */ -/* Prototype: void check_printr( $variables ) - Description: use print_r() to print variables */ -function check_printr( $variables ) { - $counter = 1; - foreach( $variables as $variable ) { - echo "\n-- Iteration $counter --\n"; - //default = false, prints output to screen - print_r($variable); - //$return=TRUE, print_r() will return its output, instead of printing it - $ret_string = print_r($variable, true); //$ret_string captures the output - echo "\n$ret_string\n"; - //$return=false, print_r() prints the output; default behavior - print_r($variable, false); - $counter++; - } -} - -echo "\n*** Testing print_r() on integer variables ***\n"; -$integers = array ( - 0, // zero as argument - 000000123, //octal value of 83 - 123000000, - -00000123, //octal value of 83 - -12300000, - range(1,10), // positive values - range(-1,-10), // negative values - +2147483647, // max positive integer - +2147483648, // max positive integer + 1 - -2147483648, // min range of integer - -2147483647, // min range of integer + 1 - 0x7FFFFFFF, // max positive hexadecimal integer - -0x80000000, // min range of hexadecimal integer - 017777777777, // max posotive octal integer - -020000000000 // min range of octal integer -); -/* calling check_printr() to display contents of integer variables - using print_r() */ -check_printr($integers); - -echo "\n*** Testing print_r() on float variables ***\n"; -$floats = array ( - -0.0, - +0.0, - 1.234, - -1.234, - -2.000000, - 000002.00, - -.5, - .567, - -.6700000e-3, - -.6700000E+3, - .6700000E+3, - .6700000e+3, - -4.10003e-3, - -4.10003E+3, - 4.100003e-3, - 4.100003E+3, - 1e5, - -1e5, - 1e-5, - -1e-5, - 1e+5, - -1e+5, - 1E5, - -1E5, - 1E+5, - -1E+5, - 1E-5, - -1E-5, - -0x80000001, // float value, beyond max negative int - 0x80000001, // float value, beyond max positive int - 020000000001, // float value, beyond max positive int - -020000000001 // float value, beyond max negative int -); -/* calling check_printr() to display contents of float variables - using print_r() */ -check_printr($floats); - -echo "\n*** Testing print_r() on string variables ***\n"; -$strings = array ( - "", - '', - " ", - ' ', - "0", - "\0", - '\0', - "\t", - '\t', - "PHP", - 'PHP', - "abcd\x0n1234\x0005678\x0000efgh\xijkl", // strings with hexadecimal NULL - "abcd\0efgh\0ijkl\x00mnop\x000qrst\00uvwx\0000yz", // strings with octal NULL - "1234\t\n5678\n\t9100\rabcda" // strings with escape characters -); -/* calling check_printr() to display contents of strings using print_r() */ -check_printr($strings); - -echo "\n*** Testing print_r() on boolean variables ***\n"; -$booleans = array ( - TRUE, - FALSE, - true, - false -); -/* calling check_printr() to display boolean variables using print_r() */ -check_printr($booleans); -var_dump( reset($booleans) ); -echo "\n"; -var_dump( current($booleans) ); - -echo "\n*** Testing print_r() on array variables ***\n"; $arrays = array ( - array(), - array(NULL), - array(null), - array(true), - array(""), - array(''), - array(array(), array()), - array(array(1, 2), array('a', 'b')), - array(1 => 'One'), - array("test" => "is_array"), - array(0), - array(-1), - array(10.5, 5.6), - array("string", "test"), - array('string', 'test'), - $array1 = array(1,2,3,4, &$array1) // recursive array + array( 0 ), + range(1, 100 ), + range('a', 'z', 2 ), + array("a" => "A", 2 => "B", "C" => 3, 4 => 4, "one" => 1, "" => NULL ), + array(1, array(1, 2 => 3 ), "one" => 1, "5" => 5 ), + array(-1, -2, -3, -4, "-0.005" => "neg0.005", 2.0 => "float2", "neg.9" => -.9 ), + array(1.0005, 2.000000, -3.000000, -4.9999999 ), + array(true, false), + array("PHP", "Web2.0", "SOA"), + array(1, array() ), + array(1, 2, "" ), + array(" "), + array(2147483647, 2147483648, -2147483647, -2147483648 ), + array(0x7FFFFFFF, -0x80000000, 017777777777, -020000000000 ), + array(-.6700000E+3, -4.10003E+3, 1e-5, -1E+5, 000002.00 ) ); -/* calling check_printr() to display contents of $arrays */ -check_printr($arrays); +/* loop through $arrays to print the last element of each sub-array */ +echo "*** Testing end() on different arrays ***\n"; +$counter = 1; +foreach ($arrays as $sub_array){ + echo "-- Iteration $counter --\n"; + var_dump( end($sub_array) ); + /* ensure that internal pointer is moved to last element */ + var_dump( current($sub_array) ); + $counter++; +} -echo "\n*** Testing print_r() on object variables ***\n"; -class object_class +/* checking for end() on sub-arrays */ +echo "\n*** Testing end() with sub-arrays ***\n"; +$test_array = array(1, array(1 => "one", "two" => 2, "" => "f") ); +var_dump( end($test_array) ); +var_dump( end($test_array[1]) ); + +/* checking working of end() when array elements are deleted */ +echo "\n*** Testing end() when array elements are deleted ***\n"; +$array_test = array("a", "b", "d", 7, "u" => "U", -4, "-.008" => "neg.008"); + +// remove first element from array +echo "\n-- Remove first element from array --\n"; +unset($array_test[0]); +var_dump( end($array_test) ); + +// remove last element from array, rewind and check end() +echo "\n-- Remove last element from array --\n"; +unset($array_test['-.008']); +var_dump( end($array_test) ); +reset( $array_test ); +var_dump( end($array_test) ); + +// remove any element !first, !last, rewind and check end() +echo "\n-- Remove any element from array apart from first and last element --\n"; +unset($array_test[7]); +var_dump( end($array_test) ); +var_dump( reset($array_test) ); +var_dump( end($array_test) ); + +/* Checking on OBJECTS type */ +echo "\n*** Testing end() on objects ***\n"; +class foo { - var $value; - public $public_var1 = 10; - private $private_var1 = 20; - private $private_var2; - protected $protected_var1 = "string_1"; - protected $protected_var2; - - function object_class ( ) { - $this->value = 50; - $this->public_var2 = 11; - $this->private_var2 = 21; - $this->protected_var2 = "string_2"; + function __toString() { + return "Object"; } - - public function foo1() { - echo "foo1() is called\n"; - } - protected function foo2() { - echo "foo2() is called\n"; - } - private function foo3() { - echo "foo3() is called\n"; - } -} -/* class with no member */ -class no_member_class { - // no members } - -/* class with member as object of other class */ -class contains_object_class +class foo1 { - var $p = 30; - var $class_object1; - public $class_object2; - private $class_object3; - protected $class_object4; - var $no_member_class_object; - - public function func() { - echo "func() is called \n"; - } - - function contains_object_class () { - $this->class_object1 = new object_class(); - $this->class_object2 = new object_class(); - $this->class_object3 = $this->class_object1; - $this->class_object4 = $this->class_object2; - $this->no_member_class_object = new no_member_class(); - $this->class_object5 = $this; //recursive reference - } + function __toString() { + return "Object1"; + } } -/* objects of different classes */ -$obj = new contains_object_class; -$temp_class_obj = new object_class(); - -/* object which is unset */ -$unset_obj = new object_class(); -unset($unset_obj); - -$objects = array ( - new object_class, - new no_member_class, - new contains_object_class, - $obj, - $obj->class_object1, - $obj->class_object2, - $obj->no_member_class_object, - $temp_class_obj, - @$unset_obj -); -/* calling check_printr() to display contents of the objects using print_r() */ -check_printr($objects); +$object1 = new foo(); //new object created +$object2 = new foo1(); -echo "\n** Testing print_r() on objects having circular reference **\n"; -$recursion_obj1 = new object_class(); -$recursion_obj2 = new object_class(); -$recursion_obj1->obj = &$recursion_obj2; //circular reference -$recursion_obj2->obj = &$recursion_obj1; //circular reference -print_r($recursion_obj2); - -echo "\n*** Testing print_r() on resources ***\n"; -/* file type resource */ -$file_handle = fopen(__FILE__, "r"); +$array_object = array(); +$array_object[0] = &$object1; +$array_object[1] = &$object2; +var_dump( end($array_object) ); +var_dump($array_object); + +/* Checking on RESOURCE type */ +echo "\n*** Testing end() on resource type ***\n"; +//file type resource +$file_handle = fopen(__FILE__, "r"); -/* directory type resource */ +//directory type resource $dir_handle = opendir( dirname(__FILE__) ); -$resources = array ( - $file_handle, - $dir_handle -); -/* calling check_printr() to display the resource content type - using print_r() */ -check_printr($resources); - -echo "\n*** Testing print_r() on different combinations of scalar - and non-scalar variables ***\n"; -/* a variable which is unset */ -$unset_var = 10.5; -unset($unset_var); - -/* unset file type resource */ -unset($file_handle); - -$variations = array ( - array( 123, -1.2345, "a" ), - array( "d", array(1, 3, 5), true, null), - array( new no_member_class, array(), false, 0 ), - array( -0.00, "Where am I?", array(7,8,9), TRUE, 'A', 987654321 ), - array( @$unset_var, 2.E+10, 100-20.9, 000004.599998 ), //unusual data - array( "array(1,2,3,4)1.0000002TRUE", @$file_handle, 111333.00+45e5, '/00\7') -); -/* calling check_printr() to display combinations of scalar and - non-scalar variables using print_r() */ -check_printr($variations); - -echo "\n*** Testing print_r() on miscelleneous input arguments ***\n"; -$misc_values = array ( - @$unset_var, - NULL, // NULL argument - @$undef_variable, //undefined variable - null -); -/* calling check_printr() to display miscelleneous data using print_r() */ -check_printr($misc_values); - -/* checking print_r() on functions */ -echo "\n*** Testing print_r() on anonymous functions ***\n"; -$newfunc = create_function('$a,$b', 'return "$a * $b = " . ($a * $b);'); -echo "New anonymous function: $newfunc\n"; -print_r( $newfunc(2, 3) ); -/* creating anonymous function dynamically */ -print_r( create_function('$a', 'return "$a * $a = " . ($a * $b);') ); - -echo "\n\n*** Testing error conditions ***\n"; -//passing zero argument -var_dump( print_r() ); - -//passing more than required no. of arguments -var_dump( print_r(123, true, "abc") ); - -// check when second arg is given other than boolean TRUE -var_dump( print_r ($value, "string") ); - -/* closing resource handle used */ -closedir($dir_handle); +//store resources in array +$resources = array($file_handle, $dir_handle); +var_dump( end($resources) ); +var_dump( current($resources) ); + +echo "\n*** Testing error conditions ***\n"; +/* checking for unexpected number of arguments */ +var_dump( end() ); +var_dump( end($array[0], $array[0]) ); + +/* checking for unexpected type of arguments */ +$var=1; +$var1="string"; +var_dump( end($var) ); +var_dump( end($var1) ); + +/* checking null array */ +$null_array = array(); +var_dump( end($null_array) ); echo "Done\n"; -?> ---EXPECTF-- -*** Testing print_r() on integer variables *** - --- Iteration 1 -- -0 -0 -0 --- Iteration 2 -- -83 -83 -83 --- Iteration 3 -- -123000000 -123000000 -123000000 --- Iteration 4 -- --83 --83 --83 --- Iteration 5 -- --12300000 --12300000 --12300000 --- Iteration 6 -- -Array -( - [0] => 1 - [1] => 2 - [2] => 3 - [3] => 4 - [4] => 5 - [5] => 6 - [6] => 7 - [7] => 8 - [8] => 9 - [9] => 10 -) - -Array -( - [0] => 1 - [1] => 2 - [2] => 3 - [3] => 4 - [4] => 5 - [5] => 6 - [6] => 7 - [7] => 8 - [8] => 9 - [9] => 10 -) - -Array -( - [0] => 1 - [1] => 2 - [2] => 3 - [3] => 4 - [4] => 5 - [5] => 6 - [6] => 7 - [7] => 8 - [8] => 9 - [9] => 10 -) --- Iteration 7 -- -Array -( - [0] => -1 - [1] => -2 - [2] => -3 - [3] => -4 - [4] => -5 - [5] => -6 - [6] => -7 - [7] => -8 - [8] => -9 - [9] => -10 -) - -Array -( - [0] => -1 - [1] => -2 - [2] => -3 - [3] => -4 - [4] => -5 - [5] => -6 - [6] => -7 - [7] => -8 - [8] => -9 - [9] => -10 -) - -Array -( - [0] => -1 - [1] => -2 - [2] => -3 - [3] => -4 - [4] => -5 - [5] => -6 - [6] => -7 - [7] => -8 - [8] => -9 - [9] => -10 -) +?> --- Iteration 8 -- -2147483647 -2147483647 -2147483647 --- Iteration 9 -- -2147483648 -2147483648 -2147483648 --- Iteration 10 -- --2147483648 --2147483648 --2147483648 --- Iteration 11 -- --2147483647 --2147483647 --2147483647 --- Iteration 12 -- -2147483647 -2147483647 -2147483647 --- Iteration 13 -- --2147483648 --2147483648 --2147483648 --- Iteration 14 -- -2147483647 -2147483647 -2147483647 --- Iteration 15 -- --2147483648 --2147483648 --2147483648 -*** Testing print_r() on float variables *** +--CLEAN-- +/* cleaning resource handles */ +fclose( $file_handle ); //file resource handle deleted +closedir( $dir_handle ); //dir resource handle deleted +--EXPECTF-- +*** Testing end() on different arrays *** -- Iteration 1 -- -0 -0 -0 +int(0) +int(0) -- Iteration 2 -- -0 -0 -0 +int(100) +int(100) -- Iteration 3 -- -1.234 -1.234 -1.234 +string(1) "y" +string(1) "y" -- Iteration 4 -- --1.234 --1.234 --1.234 +NULL +NULL -- Iteration 5 -- --2 --2 --2 +int(5) +int(5) -- Iteration 6 -- -2 -2 -2 +float(-0.9) +float(-0.9) -- Iteration 7 -- --0.5 --0.5 --0.5 +float(-4.9999999) +float(-4.9999999) -- Iteration 8 -- -0.567 -0.567 -0.567 +bool(false) +bool(false) -- Iteration 9 -- --0.00067 --0.00067 --0.00067 +string(3) "SOA" +string(3) "SOA" -- Iteration 10 -- --670 --670 --670 +array(0) { +} +array(0) { +} -- Iteration 11 -- -670 -670 -670 +string(0) "" +string(0) "" -- Iteration 12 -- -670 -670 -670 +string(1) " " +string(1) " " -- Iteration 13 -- --0.00410003 --0.00410003 --0.00410003 +float(-2147483648) +float(-2147483648) -- Iteration 14 -- --4100.03 --4100.03 --4100.03 +float(-2147483648) +float(-2147483648) -- Iteration 15 -- -0.004100003 -0.004100003 -0.004100003 --- Iteration 16 -- -4100.003 -4100.003 -4100.003 --- Iteration 17 -- -100000 -100000 -100000 --- Iteration 18 -- --100000 --100000 --100000 --- Iteration 19 -- -1.0E-5 -1.0E-5 -1.0E-5 --- Iteration 20 -- --1.0E-5 --1.0E-5 --1.0E-5 --- Iteration 21 -- -100000 -100000 -100000 --- Iteration 22 -- --100000 --100000 --100000 --- Iteration 23 -- -100000 -100000 -100000 --- Iteration 24 -- --100000 --100000 --100000 --- Iteration 25 -- -100000 -100000 -100000 --- Iteration 26 -- --100000 --100000 --100000 --- Iteration 27 -- -1.0E-5 -1.0E-5 -1.0E-5 --- Iteration 28 -- --1.0E-5 --1.0E-5 --1.0E-5 --- Iteration 29 -- --2147483649 --2147483649 --2147483649 --- Iteration 30 -- -2147483649 -2147483649 -2147483649 --- Iteration 31 -- -2147483649 -2147483649 -2147483649 --- Iteration 32 -- --2147483649 --2147483649 --2147483649 -*** Testing print_r() on string variables *** - --- Iteration 1 -- - - - --- Iteration 2 -- +float(2) +float(2) +*** Testing end() with sub-arrays *** +array(3) { + [1]=> + string(3) "one" + ["two"]=> + int(2) + [""]=> + string(1) "f" +} +string(1) "f" +*** Testing end() when array elements are deleted *** --- Iteration 3 -- - - - --- Iteration 4 -- - - - --- Iteration 5 -- -0 -0 -0 --- Iteration 6 -- ------ Iteration 7 -- -\0 -\0 -\0 --- Iteration 8 -- - - - --- Iteration 9 -- -\t -\t -\t --- Iteration 10 -- -PHP -PHP -PHP --- Iteration 11 -- -PHP -PHP -PHP --- Iteration 12 -- -abcd-abcd-abcd--- Iteration 13 -- -abcd-abcd-abcd--- Iteration 14 -- -1234 -5678 - 9100abcda -1234 -5678 - 9100abcda -1234 -5678 - 9100abcda -*** Testing print_r() on boolean variables *** +-- Remove first element from array -- +string(7) "neg.008" --- Iteration 1 -- -1 -1 -1 --- Iteration 2 -- +-- Remove last element from array -- +int(-4) +int(-4) +-- Remove any element from array apart from first and last element -- +int(-4) +string(1) "b" +int(-4) +*** Testing end() on objects *** +object(foo1)#%d (0) { +} +array(2) { + [0]=> + &object(foo)#%d (0) { + } + [1]=> + &object(foo1)#%d (0) { + } +} --- Iteration 3 -- -1 -1 -1 --- Iteration 4 -- +*** Testing end() on resource type *** +resource(%d) of type (stream) +resource(%d) of type (stream) +*** Testing error conditions *** -bool(true) +Warning: end() expects exactly 1 parameter, 0 given in %s on line %d +NULL -bool(true) +Warning: end() expects exactly 1 parameter, 2 given in %s on line %d +NULL -*** Testing print_r() on array variables *** +Warning: end() expects parameter 1 to be array, integer given in %s on line %d +NULL +Warning: end() expects parameter 1 to be array, string given in %s on line %d +NULL +bool(false) +Done +--UEXPECTF-- +*** Testing end() on different arrays *** -- Iteration 1 -- -Array -( -) - -Array -( -) - -Array -( -) - +int(0) +int(0) -- Iteration 2 -- -Array -( - [0] => -) - -Array -( - [0] => -) - -Array -( - [0] => -) - +int(100) +int(100) -- Iteration 3 -- -Array -( - [0] => -) - -Array -( - [0] => -) - -Array -( - [0] => -) - +unicode(1) "y" +unicode(1) "y" -- Iteration 4 -- -Array -( - [0] => 1 -) - -Array -( - [0] => 1 -) - -Array -( - [0] => 1 -) - +NULL +NULL -- Iteration 5 -- -Array -( - [0] => -) - -Array -( - [0] => -) - -Array -( - [0] => -) - +int(5) +int(5) -- Iteration 6 -- -Array -( - [0] => -) - -Array -( - [0] => -) - -Array -( - [0] => -) - +float(-0.9) +float(-0.9) -- Iteration 7 -- -Array -( - [0] => Array - ( - ) - - [1] => Array - ( - ) - -) - -Array -( - [0] => Array - ( - ) - - [1] => Array - ( - ) - -) - -Array -( - [0] => Array - ( - ) - - [1] => Array - ( - ) - -) - +float(-4.9999999) +float(-4.9999999) -- Iteration 8 -- -Array -( - [0] => Array - ( - [0] => 1 - [1] => 2 - ) - - [1] => Array - ( - [0] => a - [1] => b - ) - -) - -Array -( - [0] => Array - ( - [0] => 1 - [1] => 2 - ) - - [1] => Array - ( - [0] => a - [1] => b - ) - -) - -Array -( - [0] => Array - ( - [0] => 1 - [1] => 2 - ) - - [1] => Array - ( - [0] => a - [1] => b - ) - -) - +bool(false) +bool(false) -- Iteration 9 -- -Array -( - [1] => One -) - -Array -( - [1] => One -) - -Array -( - [1] => One -) - +unicode(3) "SOA" +unicode(3) "SOA" -- Iteration 10 -- -Array -( - [test] => is_array -) - -Array -( - [test] => is_array -) - -Array -( - [test] => is_array -) - +array(0) { +} +array(0) { +} -- Iteration 11 -- -Array -( - [0] => 0 -) - -Array -( - [0] => 0 -) - -Array -( - [0] => 0 -) - +unicode(0) "" +unicode(0) "" -- Iteration 12 -- -Array -( - [0] => -1 -) - -Array -( - [0] => -1 -) - -Array -( - [0] => -1 -) - +unicode(1) " " +unicode(1) " " -- Iteration 13 -- -Array -( - [0] => 10.5 - [1] => 5.6 -) - -Array -( - [0] => 10.5 - [1] => 5.6 -) - -Array -( - [0] => 10.5 - [1] => 5.6 -) - +float(-2147483648) +float(-2147483648) -- Iteration 14 -- -Array -( - [0] => string - [1] => test -) - -Array -( - [0] => string - [1] => test -) - -Array -( - [0] => string - [1] => test -) - +float(-2147483648) +float(-2147483648) -- Iteration 15 -- -Array -( - [0] => string - [1] => test -) - -Array -( - [0] => string - [1] => test -) - -Array -( - [0] => string - [1] => test -) - --- Iteration 16 -- -Array -( - [0] => 1 - [1] => 2 - [2] => 3 - [3] => 4 - [4] => Array - ( - [0] => 1 - [1] => 2 - [2] => 3 - [3] => 4 - [4] => Array - *RECURSION* - ) - -) - -Array -( - [0] => 1 - [1] => 2 - [2] => 3 - [3] => 4 - [4] => Array - ( - [0] => 1 - [1] => 2 - [2] => 3 - [3] => 4 - [4] => Array - *RECURSION* - ) - -) - -Array -( - [0] => 1 - [1] => 2 - [2] => 3 - [3] => 4 - [4] => Array - ( - [0] => 1 - [1] => 2 - [2] => 3 - [3] => 4 - [4] => Array - *RECURSION* - ) - -) - -*** Testing print_r() on object variables *** - --- Iteration 1 -- -object_class Object -( - [value] => 50 - [public_var1] => 10 - [private_var1:object_class:private] => 20 - [private_var2:object_class:private] => 21 - [protected_var1:protected] => string_1 - [protected_var2:protected] => string_2 - [public_var2] => 11 -) - -object_class Object -( - [value] => 50 - [public_var1] => 10 - [private_var1:object_class:private] => 20 - [private_var2:object_class:private] => 21 - [protected_var1:protected] => string_1 - [protected_var2:protected] => string_2 - [public_var2] => 11 -) - -object_class Object -( - [value] => 50 - [public_var1] => 10 - [private_var1:object_class:private] => 20 - [private_var2:object_class:private] => 21 - [protected_var1:protected] => string_1 - [protected_var2:protected] => string_2 - [public_var2] => 11 -) - --- Iteration 2 -- -no_member_class Object -( -) - -no_member_class Object -( -) - -no_member_class Object -( -) - --- Iteration 3 -- -contains_object_class Object -( - [p] => 30 - [class_object1] => object_class Object - ( - [value] => 50 - [public_var1] => 10 - [private_var1:object_class:private] => 20 - [private_var2:object_class:private] => 21 - [protected_var1:protected] => string_1 - [protected_var2:protected] => string_2 - [public_var2] => 11 - ) - - [class_object2] => object_class Object - ( - [value] => 50 - [public_var1] => 10 - [private_var1:object_class:private] => 20 - [private_var2:object_class:private] => 21 - [protected_var1:protected] => string_1 - [protected_var2:protected] => string_2 - [public_var2] => 11 - ) - - [class_object3:contains_object_class:private] => object_class Object - ( - [value] => 50 - [public_var1] => 10 - [private_var1:object_class:private] => 20 - [private_var2:object_class:private] => 21 - [protected_var1:protected] => string_1 - [protected_var2:protected] => string_2 - [public_var2] => 11 - ) - - [class_object4:protected] => object_class Object - ( - [value] => 50 - [public_var1] => 10 - [private_var1:object_class:private] => 20 - [private_var2:object_class:private] => 21 - [protected_var1:protected] => string_1 - [protected_var2:protected] => string_2 - [public_var2] => 11 - ) - - [no_member_class_object] => no_member_class Object - ( - ) - - [class_object5] => contains_object_class Object - *RECURSION* -) - -contains_object_class Object -( - [p] => 30 - [class_object1] => object_class Object - ( - [value] => 50 - [public_var1] => 10 - [private_var1:object_class:private] => 20 - [private_var2:object_class:private] => 21 - [protected_var1:protected] => string_1 - [protected_var2:protected] => string_2 - [public_var2] => 11 - ) - - [class_object2] => object_class Object - ( - [value] => 50 - [public_var1] => 10 - [private_var1:object_class:private] => 20 - [private_var2:object_class:private] => 21 - [protected_var1:protected] => string_1 - [protected_var2:protected] => string_2 - [public_var2] => 11 - ) - - [class_object3:contains_object_class:private] => object_class Object - ( - [value] => 50 - [public_var1] => 10 - [private_var1:object_class:private] => 20 - [private_var2:object_class:private] => 21 - [protected_var1:protected] => string_1 - [protected_var2:protected] => string_2 - [public_var2] => 11 - ) - - [class_object4:protected] => object_class Object - ( - [value] => 50 - [public_var1] => 10 - [private_var1:object_class:private] => 20 - [private_var2:object_class:private] => 21 - [protected_var1:protected] => string_1 - [protected_var2:protected] => string_2 - [public_var2] => 11 - ) - - [no_member_class_object] => no_member_class Object - ( - ) - - [class_object5] => contains_object_class Object - *RECURSION* -) - -contains_object_class Object -( - [p] => 30 - [class_object1] => object_class Object - ( - [value] => 50 - [public_var1] => 10 - [private_var1:object_class:private] => 20 - [private_var2:object_class:private] => 21 - [protected_var1:protected] => string_1 - [protected_var2:protected] => string_2 - [public_var2] => 11 - ) - - [class_object2] => object_class Object - ( - [value] => 50 - [public_var1] => 10 - [private_var1:object_class:private] => 20 - [private_var2:object_class:private] => 21 - [protected_var1:protected] => string_1 - [protected_var2:protected] => string_2 - [public_var2] => 11 - ) - - [class_object3:contains_object_class:private] => object_class Object - ( - [value] => 50 - [public_var1] => 10 - [private_var1:object_class:private] => 20 - [private_var2:object_class:private] => 21 - [protected_var1:protected] => string_1 - [protected_var2:protected] => string_2 - [public_var2] => 11 - ) - - [class_object4:protected] => object_class Object - ( - [value] => 50 - [public_var1] => 10 - [private_var1:object_class:private] => 20 - [private_var2:object_class:private] => 21 - [protected_var1:protected] => string_1 - [protected_var2:protected] => string_2 - [public_var2] => 11 - ) - - [no_member_class_object] => no_member_class Object - ( - ) - - [class_object5] => contains_object_class Object - *RECURSION* -) - --- Iteration 4 -- -contains_object_class Object -( - [p] => 30 - [class_object1] => object_class Object - ( - [value] => 50 - [public_var1] => 10 - [private_var1:object_class:private] => 20 - [private_var2:object_class:private] => 21 - [protected_var1:protected] => string_1 - [protected_var2:protected] => string_2 - [public_var2] => 11 - ) - - [class_object2] => object_class Object - ( - [value] => 50 - [public_var1] => 10 - [private_var1:object_class:private] => 20 - [private_var2:object_class:private] => 21 - [protected_var1:protected] => string_1 - [protected_var2:protected] => string_2 - [public_var2] => 11 - ) - - [class_object3:contains_object_class:private] => object_class Object - ( - [value] => 50 - [public_var1] => 10 - [private_var1:object_class:private] => 20 - [private_var2:object_class:private] => 21 - [protected_var1:protected] => string_1 - [protected_var2:protected] => string_2 - [public_var2] => 11 - ) - - [class_object4:protected] => object_class Object - ( - [value] => 50 - [public_var1] => 10 - [private_var1:object_class:private] => 20 - [private_var2:object_class:private] => 21 - [protected_var1:protected] => string_1 - [protected_var2:protected] => string_2 - [public_var2] => 11 - ) - - [no_member_class_object] => no_member_class Object - ( - ) - - [class_object5] => contains_object_class Object - *RECURSION* -) - -contains_object_class Object -( - [p] => 30 - [class_object1] => object_class Object - ( - [value] => 50 - [public_var1] => 10 - [private_var1:object_class:private] => 20 - [private_var2:object_class:private] => 21 - [protected_var1:protected] => string_1 - [protected_var2:protected] => string_2 - [public_var2] => 11 - ) - - [class_object2] => object_class Object - ( - [value] => 50 - [public_var1] => 10 - [private_var1:object_class:private] => 20 - [private_var2:object_class:private] => 21 - [protected_var1:protected] => string_1 - [protected_var2:protected] => string_2 - [public_var2] => 11 - ) - - [class_object3:contains_object_class:private] => object_class Object - ( - [value] => 50 - [public_var1] => 10 - [private_var1:object_class:private] => 20 - [private_var2:object_class:private] => 21 - [protected_var1:protected] => string_1 - [protected_var2:protected] => string_2 - [public_var2] => 11 - ) - - [class_object4:protected] => object_class Object - ( - [value] => 50 - [public_var1] => 10 - [private_var1:object_class:private] => 20 - [private_var2:object_class:private] => 21 - [protected_var1:protected] => string_1 - [protected_var2:protected] => string_2 - [public_var2] => 11 - ) - - [no_member_class_object] => no_member_class Object - ( - ) - - [class_object5] => contains_object_class Object - *RECURSION* -) - -contains_object_class Object -( - [p] => 30 - [class_object1] => object_class Object - ( - [value] => 50 - [public_var1] => 10 - [private_var1:object_class:private] => 20 - [private_var2:object_class:private] => 21 - [protected_var1:protected] => string_1 - [protected_var2:protected] => string_2 - [public_var2] => 11 - ) - - [class_object2] => object_class Object - ( - [value] => 50 - [public_var1] => 10 - [private_var1:object_class:private] => 20 - [private_var2:object_class:private] => 21 - [protected_var1:protected] => string_1 - [protected_var2:protected] => string_2 - [public_var2] => 11 - ) - - [class_object3:contains_object_class:private] => object_class Object - ( - [value] => 50 - [public_var1] => 10 - [private_var1:object_class:private] => 20 - [private_var2:object_class:private] => 21 - [protected_var1:protected] => string_1 - [protected_var2:protected] => string_2 - [public_var2] => 11 - ) - - [class_object4:protected] => object_class Object - ( - [value] => 50 - [public_var1] => 10 - [private_var1:object_class:private] => 20 - [private_var2:object_class:private] => 21 - [protected_var1:protected] => string_1 - [protected_var2:protected] => string_2 - [public_var2] => 11 - ) - - [no_member_class_object] => no_member_class Object - ( - ) - - [class_object5] => contains_object_class Object - *RECURSION* -) - --- Iteration 5 -- -object_class Object -( - [value] => 50 - [public_var1] => 10 - [private_var1:object_class:private] => 20 - [private_var2:object_class:private] => 21 - [protected_var1:protected] => string_1 - [protected_var2:protected] => string_2 - [public_var2] => 11 -) - -object_class Object -( - [value] => 50 - [public_var1] => 10 - [private_var1:object_class:private] => 20 - [private_var2:object_class:private] => 21 - [protected_var1:protected] => string_1 - [protected_var2:protected] => string_2 - [public_var2] => 11 -) - -object_class Object -( - [value] => 50 - [public_var1] => 10 - [private_var1:object_class:private] => 20 - [private_var2:object_class:private] => 21 - [protected_var1:protected] => string_1 - [protected_var2:protected] => string_2 - [public_var2] => 11 -) - --- Iteration 6 -- -object_class Object -( - [value] => 50 - [public_var1] => 10 - [private_var1:object_class:private] => 20 - [private_var2:object_class:private] => 21 - [protected_var1:protected] => string_1 - [protected_var2:protected] => string_2 - [public_var2] => 11 -) - -object_class Object -( - [value] => 50 - [public_var1] => 10 - [private_var1:object_class:private] => 20 - [private_var2:object_class:private] => 21 - [protected_var1:protected] => string_1 - [protected_var2:protected] => string_2 - [public_var2] => 11 -) - -object_class Object -( - [value] => 50 - [public_var1] => 10 - [private_var1:object_class:private] => 20 - [private_var2:object_class:private] => 21 - [protected_var1:protected] => string_1 - [protected_var2:protected] => string_2 - [public_var2] => 11 -) - --- Iteration 7 -- -no_member_class Object -( -) - -no_member_class Object -( -) - -no_member_class Object -( -) - --- Iteration 8 -- -object_class Object -( - [value] => 50 - [public_var1] => 10 - [private_var1:object_class:private] => 20 - [private_var2:object_class:private] => 21 - [protected_var1:protected] => string_1 - [protected_var2:protected] => string_2 - [public_var2] => 11 -) - -object_class Object -( - [value] => 50 - [public_var1] => 10 - [private_var1:object_class:private] => 20 - [private_var2:object_class:private] => 21 - [protected_var1:protected] => string_1 - [protected_var2:protected] => string_2 - [public_var2] => 11 -) - -object_class Object -( - [value] => 50 - [public_var1] => 10 - [private_var1:object_class:private] => 20 - [private_var2:object_class:private] => 21 - [protected_var1:protected] => string_1 - [protected_var2:protected] => string_2 - [public_var2] => 11 -) - --- Iteration 9 -- - - - -** Testing print_r() on objects having circular reference ** -object_class Object -( - [value] => 50 - [public_var1] => 10 - [private_var1:object_class:private] => 20 - [private_var2:object_class:private] => 21 - [protected_var1:protected] => string_1 - [protected_var2:protected] => string_2 - [public_var2] => 11 - [obj] => object_class Object - ( - [value] => 50 - [public_var1] => 10 - [private_var1:object_class:private] => 20 - [private_var2:object_class:private] => 21 - [protected_var1:protected] => string_1 - [protected_var2:protected] => string_2 - [public_var2] => 11 - [obj] => object_class Object - *RECURSION* - ) - -) - -*** Testing print_r() on resources *** - --- Iteration 1 -- -Resource id #%d -Resource id #%d -Resource id #%d --- Iteration 2 -- -Resource id #%d -Resource id #%d -Resource id #%d -*** Testing print_r() on different combinations of scalar - and non-scalar variables *** - --- Iteration 1 -- -Array -( - [0] => 123 - [1] => -1.2345 - [2] => a -) - -Array -( - [0] => 123 - [1] => -1.2345 - [2] => a -) - -Array -( - [0] => 123 - [1] => -1.2345 - [2] => a -) - --- Iteration 2 -- -Array -( - [0] => d - [1] => Array - ( - [0] => 1 - [1] => 3 - [2] => 5 - ) - - [2] => 1 - [3] => -) - -Array -( - [0] => d - [1] => Array - ( - [0] => 1 - [1] => 3 - [2] => 5 - ) - - [2] => 1 - [3] => -) - -Array -( - [0] => d - [1] => Array - ( - [0] => 1 - [1] => 3 - [2] => 5 - ) - - [2] => 1 - [3] => -) - --- Iteration 3 -- -Array -( - [0] => no_member_class Object - ( - ) - - [1] => Array - ( - ) - - [2] => - [3] => 0 -) - -Array -( - [0] => no_member_class Object - ( - ) - - [1] => Array - ( - ) - - [2] => - [3] => 0 -) - -Array -( - [0] => no_member_class Object - ( - ) - - [1] => Array - ( - ) - - [2] => - [3] => 0 -) - --- Iteration 4 -- -Array -( - [0] => 0 - [1] => Where am I? - [2] => Array - ( - [0] => 7 - [1] => 8 - [2] => 9 - ) - - [3] => 1 - [4] => A - [5] => 987654321 -) - -Array -( - [0] => 0 - [1] => Where am I? - [2] => Array - ( - [0] => 7 - [1] => 8 - [2] => 9 - ) - - [3] => 1 - [4] => A - [5] => 987654321 -) - -Array -( - [0] => 0 - [1] => Where am I? - [2] => Array - ( - [0] => 7 - [1] => 8 - [2] => 9 - ) - - [3] => 1 - [4] => A - [5] => 987654321 -) - --- Iteration 5 -- -Array -( - [0] => - [1] => 20000000000 - [2] => 79.1 - [3] => 4.599998 -) - -Array -( - [0] => - [1] => 20000000000 - [2] => 79.1 - [3] => 4.599998 -) - -Array -( - [0] => - [1] => 20000000000 - [2] => 79.1 - [3] => 4.599998 -) - --- Iteration 6 -- -Array -( - [0] => array(1,2,3,4)1.0000002TRUE - [1] => - [2] => 4611333 - [3] => /00\7 -) - -Array -( - [0] => array(1,2,3,4)1.0000002TRUE - [1] => - [2] => 4611333 - [3] => /00\7 -) - -Array -( - [0] => array(1,2,3,4)1.0000002TRUE - [1] => - [2] => 4611333 - [3] => /00\7 -) - -*** Testing print_r() on miscelleneous input arguments *** - --- Iteration 1 -- - - - --- Iteration 2 -- +float(2) +float(2) +*** Testing end() with sub-arrays *** +array(3) { + [1]=> + unicode(3) "one" + [u"two"]=> + int(2) + [u""]=> + unicode(1) "f" +} +unicode(1) "f" +*** Testing end() when array elements are deleted *** --- Iteration 3 -- +-- Remove first element from array -- +unicode(7) "neg.008" +-- Remove last element from array -- +int(-4) +int(-4) +-- Remove any element from array apart from first and last element -- +int(-4) +unicode(1) "b" +int(-4) --- Iteration 4 -- +*** Testing end() on objects *** +object(foo1)#%d (0) { +} +array(2) { + [0]=> + &object(foo)#%d (0) { + } + [1]=> + &object(foo1)#%d (0) { + } +} +*** Testing end() on resource type *** +resource(%d) of type (stream) +resource(%d) of type (stream) +*** Testing error conditions *** -*** Testing print_r() on anonymous functions *** -New anonymous function: -2 * 3 = 6+Warning: end() expects exactly 1 parameter, 0 given in %s on line %d +NULL -*** Testing error conditions *** +Warning: end() expects exactly 1 parameter, 2 given in %s on line %d +NULL -Warning: print_r() expects at least 1 parameter, 0 given in %s on line %d -bool(false) +Warning: end() expects parameter 1 to be array, integer given in %s on line %d +NULL -Warning: print_r() expects at most 2 parameters, 3 given in %s on line %d +Warning: end() expects parameter 1 to be array, Unicode string given in %s on line %d +NULL bool(false) - -Notice: Undefined variable: value in %s on line %d -string(0) "" Done http://cvs.php.net/viewvc.cgi/php-src/ext/standard/tests/general_functions/debug_zval_dump_b.phpt?r1=1.2&r2=1.3&diff_format=u Index: php-src/ext/standard/tests/general_functions/debug_zval_dump_b.phpt http://cvs.php.net/viewvc.cgi/php-src/ext/standard/tests/general_functions/print_r.phpt?r1=1.2&r2=1.3&diff_format=u Index: php-src/ext/standard/tests/general_functions/print_r.phpt diff -u php-src/ext/standard/tests/general_functions/print_r.phpt:1.2 php-src/ext/standard/tests/general_functions/print_r.phpt:1.3 --- php-src/ext/standard/tests/general_functions/print_r.phpt:1.2 Sat May 12 12:18:13 2007 +++ php-src/ext/standard/tests/general_functions/print_r.phpt Mon May 14 13:05:28 2007 @@ -1,7 +1,12 @@ --TEST-- Test print_r() function +--SKIPIF-- +<?php +if (PHP_INT_SIZE != 4) die("skip this test is for 32bit platform only"); +?> +--INI-- +precision=14 --FILE-- - <?php /* Prototype: bool print_r ( mixed $expression [, bool $return] ); Description: Prints human-readable information about a variable @@ -135,7 +140,6 @@ array(10.5, 5.6), array("string", "test"), array('string', 'test'), - $array1 = array(1,2,3,4, &$array1) // recursive array ); /* calling check_printr() to display contents of $arrays */ check_printr($arrays); @@ -952,61 +956,6 @@ [1] => test ) --- Iteration 16 -- -Array -( - [0] => 1 - [1] => 2 - [2] => 3 - [3] => 4 - [4] => Array - ( - [0] => 1 - [1] => 2 - [2] => 3 - [3] => 4 - [4] => Array - *RECURSION* - ) - -) - -Array -( - [0] => 1 - [1] => 2 - [2] => 3 - [3] => 4 - [4] => Array - ( - [0] => 1 - [1] => 2 - [2] => 3 - [3] => 4 - [4] => Array - *RECURSION* - ) - -) - -Array -( - [0] => 1 - [1] => 2 - [2] => 3 - [3] => 4 - [4] => Array - ( - [0] => 1 - [1] => 2 - [2] => 3 - [3] => 4 - [4] => Array - *RECURSION* - ) - -) - *** Testing print_r() on object variables *** -- Iteration 1 -- @@ -1535,13 +1484,13 @@ *** Testing print_r() on resources *** -- Iteration 1 -- -Resource id #%d -Resource id #%d -Resource id #%d +Resource id #5 +Resource id #5 +Resource id #5 -- Iteration 2 -- -Resource id #%d -Resource id #%d -Resource id #%d +Resource id #6 +Resource id #6 +Resource id #6 *** Testing print_r() on different combinations of scalar and non-scalar variables *** http://cvs.php.net/viewvc.cgi/php-src/ext/standard/tests/general_functions/strval.phpt?r1=1.2&r2=1.3&diff_format=u Index: php-src/ext/standard/tests/general_functions/strval.phpt diff -u php-src/ext/standard/tests/general_functions/strval.phpt:1.2 php-src/ext/standard/tests/general_functions/strval.phpt:1.3 --- php-src/ext/standard/tests/general_functions/strval.phpt:1.2 Sat May 12 12:18:13 2007 +++ php-src/ext/standard/tests/general_functions/strval.phpt Mon May 14 13:05:28 2007 @@ -1,5 +1,7 @@ --TEST-- Test strval() function +--INI-- +precision=14 --FILE-- <?php /* Prototype: string strval ( mixed $var ); @@ -306,3 +308,163 @@ Warning: Wrong parameter count for strval() in %s on line %d NULL Done +--UEXPECTF-- +*** Testing str_val() with scalar values*** +-- Iteration 1 -- +unicode(1) "0" +-- Iteration 2 -- +unicode(1) "1" +-- Iteration 3 -- +unicode(2) "-1" +-- Iteration 4 -- +unicode(11) "-2147483648" +-- Iteration 5 -- +unicode(11) "-2147483647" +-- Iteration 6 -- +unicode(10) "2147483647" +-- Iteration 7 -- +unicode(10) "2147483640" +-- Iteration 8 -- +unicode(4) "4667" +-- Iteration 9 -- +unicode(4) "4779" +-- Iteration 10 -- +unicode(4) "4095" +-- Iteration 11 -- +unicode(3) "250" +-- Iteration 12 -- +unicode(11) "-2147483648" +-- Iteration 13 -- +unicode(10) "2147483647" +-- Iteration 14 -- +unicode(10) "2147483647" +-- Iteration 15 -- +unicode(2) "83" +-- Iteration 16 -- +unicode(1) "1" +-- Iteration 17 -- +unicode(11) "-2147483648" +-- Iteration 18 -- +unicode(10) "2147483647" +-- Iteration 19 -- +unicode(11) "-2147483649" +-- Iteration 20 -- +unicode(10) "2147483648" +-- Iteration 21 -- +unicode(11) "-2147483649" +-- Iteration 22 -- +unicode(11) "34359738369" +-- Iteration 23 -- +unicode(10) "2147483649" +-- Iteration 24 -- +unicode(11) "-2147483649" +-- Iteration 25 -- +unicode(1) "0" +-- Iteration 26 -- +unicode(4) "-0.1" +-- Iteration 27 -- +unicode(2) "10" +-- Iteration 28 -- +unicode(7) "1050000" +-- Iteration 29 -- +unicode(6) "1.0E-5" +-- Iteration 30 -- +unicode(7) "5000000" +-- Iteration 31 -- +unicode(7) "6.0E-20" +-- Iteration 32 -- +unicode(7) "5.0E+42" +-- Iteration 33 -- +unicode(7) "3.4E-33" +-- Iteration 34 -- +unicode(1) "1" +-- Iteration 35 -- +unicode(1) "1" +-- Iteration 36 -- +unicode(0) "" +-- Iteration 37 -- +unicode(0) "" +-- Iteration 38 -- +unicode(0) "" +-- Iteration 39 -- +unicode(0) "" +-- Iteration 40 -- +unicode(1) " " +-- Iteration 41 -- +unicode(1) " " +-- Iteration 42 -- +unicode(1) "0" +-- Iteration 43 -- +unicode(1) "0" +-- Iteration 44 -- +unicode(7) "testing" +-- Iteration 45 -- +unicode(5) "0x564" +-- Iteration 46 -- +unicode(4) "0123" +-- Iteration 47 -- +unicode(4) "new +" +-- Iteration 48 -- +unicode(5) "new\n" +-- Iteration 49 -- +unicode(11) "@#$$%^&&*()" +-- Iteration 50 -- +unicode(8) " " +-- Iteration 51 -- +unicode(4) "null" +-- Iteration 52 -- +unicode(4) "null" +-- Iteration 53 -- +unicode(4) "true" +-- Iteration 54 -- +unicode(4) "true" +-- Iteration 55 -- +unicode(54) "This is a multiline heredoc +string. Numeric = 1232455." +-- Iteration 56 -- +unicode(10) "12345 +2345" +-- Iteration 57 -- +unicode(0) "" + +*** Testing strval() with non_scalar values *** +-- Iteration 1 -- +unicode(6) "Object" +-- Iteration 2 -- +unicode(%d) "Resource id #%d" +-- Iteration 3 -- +unicode(%d) "Resource id #%d" +-- Iteration 4 -- + +Notice: Array to string conversion in %s on line %d +unicode(5) "Array" +-- Iteration 5 -- + +Notice: Array to string conversion in %s on line %d +unicode(5) "Array" +-- Iteration 6 -- + +Notice: Array to string conversion in %s on line %d +unicode(5) "Array" +-- Iteration 7 -- + +Notice: Array to string conversion in %s on line %d +unicode(5) "Array" +-- Iteration 8 -- +unicode(0) "" +-- Iteration 9 -- +unicode(0) "" +-- Iteration 10 -- +unicode(0) "" +-- Iteration 11 -- +unicode(0) "" + +*** Testing error conditions *** + +Warning: Wrong parameter count for strval() in %s on line %d +NULL + +Warning: Wrong parameter count for strval() in %s on line %d +NULL +Done http://cvs.php.net/viewvc.cgi/php-src/ext/standard/tests/general_functions/var_dump.phpt?r1=1.2&r2=1.3&diff_format=u Index: php-src/ext/standard/tests/general_functions/var_dump.phpt diff -u php-src/ext/standard/tests/general_functions/var_dump.phpt:1.2 php-src/ext/standard/tests/general_functions/var_dump.phpt:1.3 --- php-src/ext/standard/tests/general_functions/var_dump.phpt:1.2 Sat May 12 12:18:13 2007 +++ php-src/ext/standard/tests/general_functions/var_dump.phpt Mon May 14 13:05:28 2007 @@ -1,7 +1,12 @@ --TEST-- Test var_dump() function +--SKIPIF-- +<?php +if (PHP_INT_SIZE != 4) die("skip this test is for 32bit platform only"); +?> +--INI-- +precision=14 --FILE-- - <?php /* Prototype: void var_dump ( mixed $expression [, mixed $expression [, $...]] ); Description: Displays structured information about one or more expressions that includes its type and value. @@ -13,7 +18,7 @@ $counter = 1; foreach( $variables as $variable ) { echo "-- Iteration $counter --\n"; - var_dump( $variable ); + var_dump($variable); $counter++; } } @@ -36,7 +41,7 @@ 017777777777, // max posotive octal integer -020000000000 // min range of octal integer ); -/* calling check_vardump() to display contents of integer variables +/* calling check_vardump() to display contents of integer variables using var_dump() */ check_vardump($integers); @@ -75,7 +80,7 @@ 020000000001, // float value, beyond max positive int -020000000001 // float value, beyond max negative int ); -/* calling check_vardump() to display contents of float variables +/* calling check_vardump() to display contents of float variables using var_dump() */ check_vardump($floats); @@ -96,7 +101,7 @@ "abcd\0efgh\0ijkl\x00mnop\x000qrst\00uvwx\0000yz", // strings with octal NULL "1234\t\n5678\n\t9100\rabcda" // strings with escape characters ); -/* calling check_vardump() to display contents of strings +/* calling check_vardump() to display contents of strings using var_dump() */ check_vardump($strings); @@ -128,7 +133,6 @@ array(10.5, 5.6), array("string", "test"), array('string', 'test'), - $array1 = array(1,2,3,4, &$array1) // recursive array ); /* calling check_vardump() to display contents of an array using var_dump() */ @@ -283,7 +287,7 @@ var_dump(); /* closing resource handle used */ -closedir($dir_handle); +closedir($dir_handle); echo "Done\n"; ?> @@ -566,41 +570,6 @@ [1]=> string(4) "test" } --- Iteration 16 -- -array(5) { - [0]=> - int(1) - [1]=> - int(2) - [2]=> - int(3) - [3]=> - int(4) - [4]=> - &array(5) { - [0]=> - int(1) - [1]=> - int(2) - [2]=> - int(3) - [3]=> - int(4) - [4]=> - &array(5) { - [0]=> - int(1) - [1]=> - int(2) - [2]=> - int(3) - [3]=> - int(4) - [4]=> - *RECURSION* - } - } -} *** Testing var_dump() on object variables *** -- Iteration 1 -- @@ -1335,7 +1304,7 @@ 5678 9100abcda" } -array(16) { +array(15) { [0]=> array(0) { } @@ -1431,41 +1400,6 @@ [1]=> string(4) "test" } - [15]=> - array(5) { - [0]=> - int(1) - [1]=> - int(2) - [2]=> - int(3) - [3]=> - int(4) - [4]=> - &array(5) { - [0]=> - int(1) - [1]=> - int(2) - [2]=> - int(3) - [3]=> - int(4) - [4]=> - &array(5) { - [0]=> - int(1) - [1]=> - int(2) - [2]=> - int(3) - [3]=> - int(4) - [4]=> - *RECURSION* - } - } - } } array(4) { [0]=> @@ -1975,3 +1909,1621 @@ Warning: Wrong parameter count for var_dump() in %s on line %d Done +--UEXPECTF-- +*** Testing var_dump() on integer variables *** +-- Iteration 1 -- +int(0) +-- Iteration 2 -- +int(83) +-- Iteration 3 -- +int(123000000) +-- Iteration 4 -- +int(-83) +-- Iteration 5 -- +int(-12300000) +-- Iteration 6 -- +array(10) { + [0]=> + int(1) + [1]=> + int(2) + [2]=> + int(3) + [3]=> + int(4) + [4]=> + int(5) + [5]=> + int(6) + [6]=> + int(7) + [7]=> + int(8) + [8]=> + int(9) + [9]=> + int(10) +} +-- Iteration 7 -- +array(10) { + [0]=> + int(-1) + [1]=> + int(-2) + [2]=> + int(-3) + [3]=> + int(-4) + [4]=> + int(-5) + [5]=> + int(-6) + [6]=> + int(-7) + [7]=> + int(-8) + [8]=> + int(-9) + [9]=> + int(-10) +} +-- Iteration 8 -- +int(2147483647) +-- Iteration 9 -- +float(2147483648) +-- Iteration 10 -- +float(-2147483648) +-- Iteration 11 -- +int(-2147483647) +-- Iteration 12 -- +int(2147483647) +-- Iteration 13 -- +float(-2147483648) +-- Iteration 14 -- +int(2147483647) +-- Iteration 15 -- +float(-2147483648) + +*** Testing var_dump() on float variables *** +-- Iteration 1 -- +float(0) +-- Iteration 2 -- +float(0) +-- Iteration 3 -- +float(1.234) +-- Iteration 4 -- +float(-1.234) +-- Iteration 5 -- +float(-2) +-- Iteration 6 -- +float(2) +-- Iteration 7 -- +float(-0.5) +-- Iteration 8 -- +float(0.567) +-- Iteration 9 -- +float(-0.00067) +-- Iteration 10 -- +float(-670) +-- Iteration 11 -- +float(670) +-- Iteration 12 -- +float(670) +-- Iteration 13 -- +float(-0.00410003) +-- Iteration 14 -- +float(-4100.03) +-- Iteration 15 -- +float(0.004100003) +-- Iteration 16 -- +float(4100.003) +-- Iteration 17 -- +float(100000) +-- Iteration 18 -- +float(-100000) +-- Iteration 19 -- +float(1.0E-5) +-- Iteration 20 -- +float(-1.0E-5) +-- Iteration 21 -- +float(100000) +-- Iteration 22 -- +float(-100000) +-- Iteration 23 -- +float(100000) +-- Iteration 24 -- +float(-100000) +-- Iteration 25 -- +float(100000) +-- Iteration 26 -- +float(-100000) +-- Iteration 27 -- +float(1.0E-5) +-- Iteration 28 -- +float(-1.0E-5) +-- Iteration 29 -- +float(-2147483649) +-- Iteration 30 -- +float(2147483649) +-- Iteration 31 -- +float(2147483649) +-- Iteration 32 -- +float(-2147483649) + +*** Testing var_dump() on string variables *** +-- Iteration 1 -- +unicode(0) "" +-- Iteration 2 -- +unicode(0) "" +-- Iteration 3 -- +unicode(1) " " +-- Iteration 4 -- +unicode(1) " " +-- Iteration 5 -- +unicode(1) "0" +-- Iteration 6 -- +unicode(1) "+-- Iteration 7 -- +unicode(2) "\0" +-- Iteration 8 -- +unicode(1) " " +-- Iteration 9 -- +unicode(2) "\t" +-- Iteration 10 -- +unicode(3) "PHP" +-- Iteration 11 -- +unicode(3) "PHP" +-- Iteration 12 -- +unicode(29) "abcd+-- Iteration 13 -- +unicode(34) "abcd+-- Iteration 14 -- +unicode(22) "1234 +5678 + 9100abcda" + +*** Testing var_dump() on boolean variables *** +-- Iteration 1 -- +bool(true) +-- Iteration 2 -- +bool(false) +-- Iteration 3 -- +bool(true) +-- Iteration 4 -- +bool(false) + +*** Testing var_dump() on array variables *** +-- Iteration 1 -- +array(0) { +} +-- Iteration 2 -- +array(1) { + [0]=> + NULL +} +-- Iteration 3 -- +array(1) { + [0]=> + NULL +} +-- Iteration 4 -- +array(1) { + [0]=> + bool(true) +} +-- Iteration 5 -- +array(1) { + [0]=> + unicode(0) "" +} +-- Iteration 6 -- +array(1) { + [0]=> + unicode(0) "" +} +-- Iteration 7 -- +array(2) { + [0]=> + array(0) { + } + [1]=> + array(0) { + } +} +-- Iteration 8 -- +array(2) { + [0]=> + array(2) { + [0]=> + int(1) + [1]=> + int(2) + } + [1]=> + array(2) { + [0]=> + unicode(1) "a" + [1]=> + unicode(1) "b" + } +} +-- Iteration 9 -- +array(1) { + [1]=> + unicode(3) "One" +} +-- Iteration 10 -- +array(1) { + [u"test"]=> + unicode(8) "is_array" +} +-- Iteration 11 -- +array(1) { + [0]=> + int(0) +} +-- Iteration 12 -- +array(1) { + [0]=> + int(-1) +} +-- Iteration 13 -- +array(2) { + [0]=> + float(10.5) + [1]=> + float(5.6) +} +-- Iteration 14 -- +array(2) { + [0]=> + unicode(6) "string" + [1]=> + unicode(4) "test" +} +-- Iteration 15 -- +array(2) { + [0]=> + unicode(6) "string" + [1]=> + unicode(4) "test" +} + +*** Testing var_dump() on object variables *** +-- Iteration 1 -- +object(object_class)#%d (7) { + [u"value"]=> + int(50) + [u"public_var1"]=> + int(10) + [u"private_var1":u"object_class":private]=> + int(20) + [u"private_var2":u"object_class":private]=> + int(21) + [u"protected_var1":protected]=> + unicode(8) "string_1" + [u"protected_var2":protected]=> + unicode(8) "string_2" + [u"public_var2"]=> + int(11) +} +-- Iteration 2 -- +object(no_member_class)#%d (0) { +} +-- Iteration 3 -- +object(contains_object_class)#%d (7) { + [u"p"]=> + int(30) + [u"class_object1"]=> + object(object_class)#%d (7) { + [u"value"]=> + int(50) + [u"public_var1"]=> + int(10) + [u"private_var1":u"object_class":private]=> + int(20) + [u"private_var2":u"object_class":private]=> + int(21) + [u"protected_var1":protected]=> + unicode(8) "string_1" + [u"protected_var2":protected]=> + unicode(8) "string_2" + [u"public_var2"]=> + int(11) + } + [u"class_object2"]=> + object(object_class)#%d (7) { + [u"value"]=> + int(50) + [u"public_var1"]=> + int(10) + [u"private_var1":u"object_class":private]=> + int(20) + [u"private_var2":u"object_class":private]=> + int(21) + [u"protected_var1":protected]=> + unicode(8) "string_1" + [u"protected_var2":protected]=> + unicode(8) "string_2" + [u"public_var2"]=> + int(11) + } + [u"class_object3":u"contains_object_class":private]=> + object(object_class)#%d (7) { + [u"value"]=> + int(50) + [u"public_var1"]=> + int(10) + [u"private_var1":u"object_class":private]=> + int(20) + [u"private_var2":u"object_class":private]=> + int(21) + [u"protected_var1":protected]=> + unicode(8) "string_1" + [u"protected_var2":protected]=> + unicode(8) "string_2" + [u"public_var2"]=> + int(11) + } + [u"class_object4":protected]=> + object(object_class)#%d (7) { + [u"value"]=> + int(50) + [u"public_var1"]=> + int(10) + [u"private_var1":u"object_class":private]=> + int(20) + [u"private_var2":u"object_class":private]=> + int(21) + [u"protected_var1":protected]=> + unicode(8) "string_1" + [u"protected_var2":protected]=> + unicode(8) "string_2" + [u"public_var2"]=> + int(11) + } + [u"no_member_class_object"]=> + object(no_member_class)#%d (0) { + } + [u"class_object5"]=> + object(contains_object_class)#%d (7) { + [u"p"]=> + int(30) + [u"class_object1"]=> + object(object_class)#%d (7) { + [u"value"]=> + int(50) + [u"public_var1"]=> + int(10) + [u"private_var1":u"object_class":private]=> + int(20) + [u"private_var2":u"object_class":private]=> + int(21) + [u"protected_var1":protected]=> + unicode(8) "string_1" + [u"protected_var2":protected]=> + unicode(8) "string_2" + [u"public_var2"]=> + int(11) + } + [u"class_object2"]=> + object(object_class)#%d (7) { + [u"value"]=> + int(50) + [u"public_var1"]=> + int(10) + [u"private_var1":u"object_class":private]=> + int(20) + [u"private_var2":u"object_class":private]=> + int(21) + [u"protected_var1":protected]=> + unicode(8) "string_1" + [u"protected_var2":protected]=> + unicode(8) "string_2" + [u"public_var2"]=> + int(11) + } + [u"class_object3":u"contains_object_class":private]=> + object(object_class)#%d (7) { + [u"value"]=> + int(50) + [u"public_var1"]=> + int(10) + [u"private_var1":u"object_class":private]=> + int(20) + [u"private_var2":u"object_class":private]=> + int(21) + [u"protected_var1":protected]=> + unicode(8) "string_1" + [u"protected_var2":protected]=> + unicode(8) "string_2" + [u"public_var2"]=> + int(11) + } + [u"class_object4":protected]=> + object(object_class)#%d (7) { + [u"value"]=> + int(50) + [u"public_var1"]=> + int(10) + [u"private_var1":u"object_class":private]=> + int(20) + [u"private_var2":u"object_class":private]=> + int(21) + [u"protected_var1":protected]=> + unicode(8) "string_1" + [u"protected_var2":protected]=> + unicode(8) "string_2" + [u"public_var2"]=> + int(11) + } + [u"no_member_class_object"]=> + object(no_member_class)#%d (0) { + } + [u"class_object5"]=> + *RECURSION* + } +} +-- Iteration 4 -- +object(contains_object_class)#%d (7) { + [u"p"]=> + int(30) + [u"class_object1"]=> + object(object_class)#%d (7) { + [u"value"]=> + int(50) + [u"public_var1"]=> + int(10) + [u"private_var1":u"object_class":private]=> + int(20) + [u"private_var2":u"object_class":private]=> + int(21) + [u"protected_var1":protected]=> + unicode(8) "string_1" + [u"protected_var2":protected]=> + unicode(8) "string_2" + [u"public_var2"]=> + int(11) + } + [u"class_object2"]=> + object(object_class)#%d (7) { + [u"value"]=> + int(50) + [u"public_var1"]=> + int(10) + [u"private_var1":u"object_class":private]=> + int(20) + [u"private_var2":u"object_class":private]=> + int(21) + [u"protected_var1":protected]=> + unicode(8) "string_1" + [u"protected_var2":protected]=> + unicode(8) "string_2" + [u"public_var2"]=> + int(11) + } + [u"class_object3":u"contains_object_class":private]=> + object(object_class)#%d (7) { + [u"value"]=> + int(50) + [u"public_var1"]=> + int(10) + [u"private_var1":u"object_class":private]=> + int(20) + [u"private_var2":u"object_class":private]=> + int(21) + [u"protected_var1":protected]=> + unicode(8) "string_1" + [u"protected_var2":protected]=> + unicode(8) "string_2" + [u"public_var2"]=> + int(11) + } + [u"class_object4":protected]=> + object(object_class)#%d (7) { + [u"value"]=> + int(50) + [u"public_var1"]=> + int(10) + [u"private_var1":u"object_class":private]=> + int(20) + [u"private_var2":u"object_class":private]=> + int(21) + [u"protected_var1":protected]=> + unicode(8) "string_1" + [u"protected_var2":protected]=> + unicode(8) "string_2" + [u"public_var2"]=> + int(11) + } + [u"no_member_class_object"]=> + object(no_member_class)#%d (0) { + } + [u"class_object5"]=> + object(contains_object_class)#%d (7) { + [u"p"]=> + int(30) + [u"class_object1"]=> + object(object_class)#%d (7) { + [u"value"]=> + int(50) + [u"public_var1"]=> + int(10) + [u"private_var1":u"object_class":private]=> + int(20) + [u"private_var2":u"object_class":private]=> + int(21) + [u"protected_var1":protected]=> + unicode(8) "string_1" + [u"protected_var2":protected]=> + unicode(8) "string_2" + [u"public_var2"]=> + int(11) + } + [u"class_object2"]=> + object(object_class)#%d (7) { + [u"value"]=> + int(50) + [u"public_var1"]=> + int(10) + [u"private_var1":u"object_class":private]=> + int(20) + [u"private_var2":u"object_class":private]=> + int(21) + [u"protected_var1":protected]=> + unicode(8) "string_1" + [u"protected_var2":protected]=> + unicode(8) "string_2" + [u"public_var2"]=> + int(11) + } + [u"class_object3":u"contains_object_class":private]=> + object(object_class)#%d (7) { + [u"value"]=> + int(50) + [u"public_var1"]=> + int(10) + [u"private_var1":u"object_class":private]=> + int(20) + [u"private_var2":u"object_class":private]=> + int(21) + [u"protected_var1":protected]=> + unicode(8) "string_1" + [u"protected_var2":protected]=> + unicode(8) "string_2" + [u"public_var2"]=> + int(11) + } + [u"class_object4":protected]=> + object(object_class)#%d (7) { + [u"value"]=> + int(50) + [u"public_var1"]=> + int(10) + [u"private_var1":u"object_class":private]=> + int(20) + [u"private_var2":u"object_class":private]=> + int(21) + [u"protected_var1":protected]=> + unicode(8) "string_1" + [u"protected_var2":protected]=> + unicode(8) "string_2" + [u"public_var2"]=> + int(11) + } + [u"no_member_class_object"]=> + object(no_member_class)#%d (0) { + } + [u"class_object5"]=> + *RECURSION* + } +} +-- Iteration 5 -- +object(object_class)#%d (7) { + [u"value"]=> + int(50) + [u"public_var1"]=> + int(10) + [u"private_var1":u"object_class":private]=> + int(20) + [u"private_var2":u"object_class":private]=> + int(21) + [u"protected_var1":protected]=> + unicode(8) "string_1" + [u"protected_var2":protected]=> + unicode(8) "string_2" + [u"public_var2"]=> + int(11) +} +-- Iteration 6 -- +object(object_class)#%d (7) { + [u"value"]=> + int(50) + [u"public_var1"]=> + int(10) + [u"private_var1":u"object_class":private]=> + int(20) + [u"private_var2":u"object_class":private]=> + int(21) + [u"protected_var1":protected]=> + unicode(8) "string_1" + [u"protected_var2":protected]=> + unicode(8) "string_2" + [u"public_var2"]=> + int(11) +} +-- Iteration 7 -- +object(no_member_class)#%d (0) { +} +-- Iteration 8 -- +object(object_class)#%d (7) { + [u"value"]=> + int(50) + [u"public_var1"]=> + int(10) + [u"private_var1":u"object_class":private]=> + int(20) + [u"private_var2":u"object_class":private]=> + int(21) + [u"protected_var1":protected]=> + unicode(8) "string_1" + [u"protected_var2":protected]=> + unicode(8) "string_2" + [u"public_var2"]=> + int(11) +} +-- Iteration 9 -- +NULL + +** Testing var_dump() on objects having circular reference ** +object(object_class)#%d (8) { + [u"value"]=> + int(50) + [u"public_var1"]=> + int(10) + [u"private_var1":u"object_class":private]=> + int(20) + [u"private_var2":u"object_class":private]=> + int(21) + [u"protected_var1":protected]=> + unicode(8) "string_1" + [u"protected_var2":protected]=> + unicode(8) "string_2" + [u"public_var2"]=> + int(11) + [u"obj"]=> + &object(object_class)#%d (8) { + [u"value"]=> + int(50) + [u"public_var1"]=> + int(10) + [u"private_var1":u"object_class":private]=> + int(20) + [u"private_var2":u"object_class":private]=> + int(21) + [u"protected_var1":protected]=> + unicode(8) "string_1" + [u"protected_var2":protected]=> + unicode(8) "string_2" + [u"public_var2"]=> + int(11) + [u"obj"]=> + &object(object_class)#%d (8) { + [u"value"]=> + int(50) + [u"public_var1"]=> + int(10) + [u"private_var1":u"object_class":private]=> + int(20) + [u"private_var2":u"object_class":private]=> + int(21) + [u"protected_var1":protected]=> + unicode(8) "string_1" + [u"protected_var2":protected]=> + unicode(8) "string_2" + [u"public_var2"]=> + int(11) + [u"obj"]=> + &object(object_class)#%d (8) { + [u"value"]=> + int(50) + [u"public_var1"]=> + int(10) + [u"private_var1":u"object_class":private]=> + int(20) + [u"private_var2":u"object_class":private]=> + int(21) + [u"protected_var1":protected]=> + unicode(8) "string_1" + [u"protected_var2":protected]=> + unicode(8) "string_2" + [u"public_var2"]=> + int(11) + [u"obj"]=> + *RECURSION* + } + } + } +} + +*** Testing var_dump() on resources *** +-- Iteration 1 -- +resource(%d) of type (stream) +-- Iteration 2 -- +resource(%d) of type (stream) + +*** Testing var_dump() on different combinations of scalar + and non-scalar variables *** +-- Iteration 1 -- +array(3) { + [0]=> + int(123) + [1]=> + float(-1.2345) + [2]=> + unicode(1) "a" +} +-- Iteration 2 -- +array(4) { + [0]=> + unicode(1) "d" + [1]=> + array(3) { + [0]=> + int(1) + [1]=> + int(3) + [2]=> + int(5) + } + [2]=> + bool(true) + [3]=> + NULL +} +-- Iteration 3 -- +array(4) { + [0]=> + object(no_member_class)#%d (0) { + } + [1]=> + array(0) { + } + [2]=> + bool(false) + [3]=> + int(0) +} +-- Iteration 4 -- +array(6) { + [0]=> + float(0) + [1]=> + unicode(11) "Where am I?" + [2]=> + array(3) { + [0]=> + int(7) + [1]=> + int(8) + [2]=> + int(9) + } + [3]=> + bool(true) + [4]=> + unicode(1) "A" + [5]=> + int(987654321) +} +-- Iteration 5 -- +array(4) { + [0]=> + NULL + [1]=> + float(20000000000) + [2]=> + float(79.1) + [3]=> + float(4.599998) +} +-- Iteration 6 -- +array(4) { + [0]=> + unicode(27) "array(1,2,3,4)1.0000002TRUE" + [1]=> + NULL + [2]=> + float(4611333) + [3]=> + unicode(5) "/00\7" +} + +*** Testing var_dump() on miscelleneous input arguments *** +-- Iteration 1 -- +NULL +-- Iteration 2 -- +NULL +-- Iteration 3 -- +NULL +-- Iteration 4 -- +NULL + +*** Testing var_dump() on multiple arguments *** +array(15) { + [0]=> + int(0) + [1]=> + int(83) + [2]=> + int(123000000) + [3]=> + int(-83) + [4]=> + int(-12300000) + [5]=> + array(10) { + [0]=> + int(1) + [1]=> + int(2) + [2]=> + int(3) + [3]=> + int(4) + [4]=> + int(5) + [5]=> + int(6) + [6]=> + int(7) + [7]=> + int(8) + [8]=> + int(9) + [9]=> + int(10) + } + [6]=> + array(10) { + [0]=> + int(-1) + [1]=> + int(-2) + [2]=> + int(-3) + [3]=> + int(-4) + [4]=> + int(-5) + [5]=> + int(-6) + [6]=> + int(-7) + [7]=> + int(-8) + [8]=> + int(-9) + [9]=> + int(-10) + } + [7]=> + int(2147483647) + [8]=> + float(2147483648) + [9]=> + float(-2147483648) + [10]=> + int(-2147483647) + [11]=> + int(2147483647) + [12]=> + float(-2147483648) + [13]=> + int(2147483647) + [14]=> + float(-2147483648) +} +array(32) { + [0]=> + float(0) + [1]=> + float(0) + [2]=> + float(1.234) + [3]=> + float(-1.234) + [4]=> + float(-2) + [5]=> + float(2) + [6]=> + float(-0.5) + [7]=> + float(0.567) + [8]=> + float(-0.00067) + [9]=> + float(-670) + [10]=> + float(670) + [11]=> + float(670) + [12]=> + float(-0.00410003) + [13]=> + float(-4100.03) + [14]=> + float(0.004100003) + [15]=> + float(4100.003) + [16]=> + float(100000) + [17]=> + float(-100000) + [18]=> + float(1.0E-5) + [19]=> + float(-1.0E-5) + [20]=> + float(100000) + [21]=> + float(-100000) + [22]=> + float(100000) + [23]=> + float(-100000) + [24]=> + float(100000) + [25]=> + float(-100000) + [26]=> + float(1.0E-5) + [27]=> + float(-1.0E-5) + [28]=> + float(-2147483649) + [29]=> + float(2147483649) + [30]=> + float(2147483649) + [31]=> + float(-2147483649) +} +array(14) { + [0]=> + unicode(0) "" + [1]=> + unicode(0) "" + [2]=> + unicode(1) " " + [3]=> + unicode(1) " " + [4]=> + unicode(1) "0" + [5]=> + unicode(1) "+ [6]=> + unicode(2) "\0" + [7]=> + unicode(1) " " + [8]=> + unicode(2) "\t" + [9]=> + unicode(3) "PHP" + [10]=> + unicode(3) "PHP" + [11]=> + unicode(29) "abcd+ [12]=> + unicode(34) "abcd+ [13]=> + unicode(22) "1234 +5678 + 9100abcda" +} +array(15) { + [0]=> + array(0) { + } + [1]=> + array(1) { + [0]=> + NULL + } + [2]=> + array(1) { + [0]=> + NULL + } + [3]=> + array(1) { + [0]=> + bool(true) + } + [4]=> + array(1) { + [0]=> + unicode(0) "" + } + [5]=> + array(1) { + [0]=> + unicode(0) "" + } + [6]=> + array(2) { + [0]=> + array(0) { + } + [1]=> + array(0) { + } + } + [7]=> + array(2) { + [0]=> + array(2) { + [0]=> + int(1) + [1]=> + int(2) + } + [1]=> + array(2) { + [0]=> + unicode(1) "a" + [1]=> + unicode(1) "b" + } + } + [8]=> + array(1) { + [1]=> + unicode(3) "One" + } + [9]=> + array(1) { + [u"test"]=> + unicode(8) "is_array" + } + [10]=> + array(1) { + [0]=> + int(0) + } + [11]=> + array(1) { + [0]=> + int(-1) + } + [12]=> + array(2) { + [0]=> + float(10.5) + [1]=> + float(5.6) + } + [13]=> + array(2) { + [0]=> + unicode(6) "string" + [1]=> + unicode(4) "test" + } + [14]=> + array(2) { + [0]=> + unicode(6) "string" + [1]=> + unicode(4) "test" + } +} +array(4) { + [0]=> + bool(true) + [1]=> + bool(false) + [2]=> + bool(true) + [3]=> + bool(false) +} +array(2) { + [0]=> + resource(%d) of type (stream) + [1]=> + resource(%d) of type (stream) +} +array(9) { + [0]=> + object(object_class)#%d (7) { + [u"value"]=> + int(50) + [u"public_var1"]=> + int(10) + [u"private_var1":u"object_class":private]=> + int(20) + [u"private_var2":u"object_class":private]=> + int(21) + [u"protected_var1":protected]=> + unicode(8) "string_1" + [u"protected_var2":protected]=> + unicode(8) "string_2" + [u"public_var2"]=> + int(11) + } + [1]=> + object(no_member_class)#%d (0) { + } + [2]=> + object(contains_object_class)#%d (7) { + [u"p"]=> + int(30) + [u"class_object1"]=> + object(object_class)#%d (7) { + [u"value"]=> + int(50) + [u"public_var1"]=> + int(10) + [u"private_var1":u"object_class":private]=> + int(20) + [u"private_var2":u"object_class":private]=> + int(21) + [u"protected_var1":protected]=> + unicode(8) "string_1" + [u"protected_var2":protected]=> + unicode(8) "string_2" + [u"public_var2"]=> + int(11) + } + [u"class_object2"]=> + object(object_class)#%d (7) { + [u"value"]=> + int(50) + [u"public_var1"]=> + int(10) + [u"private_var1":u"object_class":private]=> + int(20) + [u"private_var2":u"object_class":private]=> + int(21) + [u"protected_var1":protected]=> + unicode(8) "string_1" + [u"protected_var2":protected]=> + unicode(8) "string_2" + [u"public_var2"]=> + int(11) + } + [u"class_object3":u"contains_object_class":private]=> + object(object_class)#%d (7) { + [u"value"]=> + int(50) + [u"public_var1"]=> + int(10) + [u"private_var1":u"object_class":private]=> + int(20) + [u"private_var2":u"object_class":private]=> + int(21) + [u"protected_var1":protected]=> + unicode(8) "string_1" + [u"protected_var2":protected]=> + unicode(8) "string_2" + [u"public_var2"]=> + int(11) + } + [u"class_object4":protected]=> + object(object_class)#%d (7) { + [u"value"]=> + int(50) + [u"public_var1"]=> + int(10) + [u"private_var1":u"object_class":private]=> + int(20) + [u"private_var2":u"object_class":private]=> + int(21) + [u"protected_var1":protected]=> + unicode(8) "string_1" + [u"protected_var2":protected]=> + unicode(8) "string_2" + [u"public_var2"]=> + int(11) + } + [u"no_member_class_object"]=> + object(no_member_class)#%d (0) { + } + [u"class_object5"]=> + object(contains_object_class)#%d (7) { + [u"p"]=> + int(30) + [u"class_object1"]=> + object(object_class)#%d (7) { + [u"value"]=> + int(50) + [u"public_var1"]=> + int(10) + [u"private_var1":u"object_class":private]=> + int(20) + [u"private_var2":u"object_class":private]=> + int(21) + [u"protected_var1":protected]=> + unicode(8) "string_1" + [u"protected_var2":protected]=> + unicode(8) "string_2" + [u"public_var2"]=> + int(11) + } + [u"class_object2"]=> + object(object_class)#%d (7) { + [u"value"]=> + int(50) + [u"public_var1"]=> + int(10) + [u"private_var1":u"object_class":private]=> + int(20) + [u"private_var2":u"object_class":private]=> + int(21) + [u"protected_var1":protected]=> + unicode(8) "string_1" + [u"protected_var2":protected]=> + unicode(8) "string_2" + [u"public_var2"]=> + int(11) + } + [u"class_object3":u"contains_object_class":private]=> + object(object_class)#%d (7) { + [u"value"]=> + int(50) + [u"public_var1"]=> + int(10) + [u"private_var1":u"object_class":private]=> + int(20) + [u"private_var2":u"object_class":private]=> + int(21) + [u"protected_var1":protected]=> + unicode(8) "string_1" + [u"protected_var2":protected]=> + unicode(8) "string_2" + [u"public_var2"]=> + int(11) + } + [u"class_object4":protected]=> + object(object_class)#%d (7) { + [u"value"]=> + int(50) + [u"public_var1"]=> + int(10) + [u"private_var1":u"object_class":private]=> + int(20) + [u"private_var2":u"object_class":private]=> + int(21) + [u"protected_var1":protected]=> + unicode(8) "string_1" + [u"protected_var2":protected]=> + unicode(8) "string_2" + [u"public_var2"]=> + int(11) + } + [u"no_member_class_object"]=> + object(no_member_class)#%d (0) { + } + [u"class_object5"]=> + *RECURSION* + } + } + [3]=> + object(contains_object_class)#%d (7) { + [u"p"]=> + int(30) + [u"class_object1"]=> + object(object_class)#%d (7) { + [u"value"]=> + int(50) + [u"public_var1"]=> + int(10) + [u"private_var1":u"object_class":private]=> + int(20) + [u"private_var2":u"object_class":private]=> + int(21) + [u"protected_var1":protected]=> + unicode(8) "string_1" + [u"protected_var2":protected]=> + unicode(8) "string_2" + [u"public_var2"]=> + int(11) + } + [u"class_object2"]=> + object(object_class)#%d (7) { + [u"value"]=> + int(50) + [u"public_var1"]=> + int(10) + [u"private_var1":u"object_class":private]=> + int(20) + [u"private_var2":u"object_class":private]=> + int(21) + [u"protected_var1":protected]=> + unicode(8) "string_1" + [u"protected_var2":protected]=> + unicode(8) "string_2" + [u"public_var2"]=> + int(11) + } + [u"class_object3":u"contains_object_class":private]=> + object(object_class)#%d (7) { + [u"value"]=> + int(50) + [u"public_var1"]=> + int(10) + [u"private_var1":u"object_class":private]=> + int(20) + [u"private_var2":u"object_class":private]=> + int(21) + [u"protected_var1":protected]=> + unicode(8) "string_1" + [u"protected_var2":protected]=> + unicode(8) "string_2" + [u"public_var2"]=> + int(11) + } + [u"class_object4":protected]=> + object(object_class)#%d (7) { + [u"value"]=> + int(50) + [u"public_var1"]=> + int(10) + [u"private_var1":u"object_class":private]=> + int(20) + [u"private_var2":u"object_class":private]=> + int(21) + [u"protected_var1":protected]=> + unicode(8) "string_1" + [u"protected_var2":protected]=> + unicode(8) "string_2" + [u"public_var2"]=> + int(11) + } + [u"no_member_class_object"]=> + object(no_member_class)#%d (0) { + } + [u"class_object5"]=> + object(contains_object_class)#%d (7) { + [u"p"]=> + int(30) + [u"class_object1"]=> + object(object_class)#%d (7) { + [u"value"]=> + int(50) + [u"public_var1"]=> + int(10) + [u"private_var1":u"object_class":private]=> + int(20) + [u"private_var2":u"object_class":private]=> + int(21) + [u"protected_var1":protected]=> + unicode(8) "string_1" + [u"protected_var2":protected]=> + unicode(8) "string_2" + [u"public_var2"]=> + int(11) + } + [u"class_object2"]=> + object(object_class)#%d (7) { + [u"value"]=> + int(50) + [u"public_var1"]=> + int(10) + [u"private_var1":u"object_class":private]=> + int(20) + [u"private_var2":u"object_class":private]=> + int(21) + [u"protected_var1":protected]=> + unicode(8) "string_1" + [u"protected_var2":protected]=> + unicode(8) "string_2" + [u"public_var2"]=> + int(11) + } + [u"class_object3":u"contains_object_class":private]=> + object(object_class)#%d (7) { + [u"value"]=> + int(50) + [u"public_var1"]=> + int(10) + [u"private_var1":u"object_class":private]=> + int(20) + [u"private_var2":u"object_class":private]=> + int(21) + [u"protected_var1":protected]=> + unicode(8) "string_1" + [u"protected_var2":protected]=> + unicode(8) "string_2" + [u"public_var2"]=> + int(11) + } + [u"class_object4":protected]=> + object(object_class)#%d (7) { + [u"value"]=> + int(50) + [u"public_var1"]=> + int(10) + [u"private_var1":u"object_class":private]=> + int(20) + [u"private_var2":u"object_class":private]=> + int(21) + [u"protected_var1":protected]=> + unicode(8) "string_1" + [u"protected_var2":protected]=> + unicode(8) "string_2" + [u"public_var2"]=> + int(11) + } + [u"no_member_class_object"]=> + object(no_member_class)#%d (0) { + } + [u"class_object5"]=> + *RECURSION* + } + } + [4]=> + object(object_class)#%d (7) { + [u"value"]=> + int(50) + [u"public_var1"]=> + int(10) + [u"private_var1":u"object_class":private]=> + int(20) + [u"private_var2":u"object_class":private]=> + int(21) + [u"protected_var1":protected]=> + unicode(8) "string_1" + [u"protected_var2":protected]=> + unicode(8) "string_2" + [u"public_var2"]=> + int(11) + } + [5]=> + object(object_class)#%d (7) { + [u"value"]=> + int(50) + [u"public_var1"]=> + int(10) + [u"private_var1":u"object_class":private]=> + int(20) + [u"private_var2":u"object_class":private]=> + int(21) + [u"protected_var1":protected]=> + unicode(8) "string_1" + [u"protected_var2":protected]=> + unicode(8) "string_2" + [u"public_var2"]=> + int(11) + } + [6]=> + object(no_member_class)#%d (0) { + } + [7]=> + object(object_class)#%d (7) { + [u"value"]=> + int(50) + [u"public_var1"]=> + int(10) + [u"private_var1":u"object_class":private]=> + int(20) + [u"private_var2":u"object_class":private]=> + int(21) + [u"protected_var1":protected]=> + unicode(8) "string_1" + [u"protected_var2":protected]=> + unicode(8) "string_2" + [u"public_var2"]=> + int(11) + } + [8]=> + NULL +} +array(4) { + [0]=> + NULL + [1]=> + NULL + [2]=> + NULL + [3]=> + NULL +} +array(6) { + [0]=> + array(3) { + [0]=> + int(123) + [1]=> + float(-1.2345) + [2]=> + unicode(1) "a" + } + [1]=> + array(4) { + [0]=> + unicode(1) "d" + [1]=> + array(3) { + [0]=> + int(1) + [1]=> + int(3) + [2]=> + int(5) + } + [2]=> + bool(true) + [3]=> + NULL + } + [2]=> + array(4) { + [0]=> + object(no_member_class)#%d (0) { + } + [1]=> + array(0) { + } + [2]=> + bool(false) + [3]=> + int(0) + } + [3]=> + array(6) { + [0]=> + float(0) + [1]=> + unicode(11) "Where am I?" + [2]=> + array(3) { + [0]=> + int(7) + [1]=> + int(8) + [2]=> + int(9) + } + [3]=> + bool(true) + [4]=> + unicode(1) "A" + [5]=> + int(987654321) + } + [4]=> + array(4) { + [0]=> + NULL + [1]=> + float(20000000000) + [2]=> + float(79.1) + [3]=> + float(4.599998) + } + [5]=> + array(4) { + [0]=> + unicode(27) "array(1,2,3,4)1.0000002TRUE" + [1]=> + NULL + [2]=> + float(4611333) + [3]=> + unicode(5) "/00\7" + } +} + +*** Testing var_dump() on anonymous functions *** +New anonymous function: +unicode(9) "2 * 3 = 6" +unicode(9) "+ +*** Testing error conditions *** + +Warning: Wrong parameter count for var_dump() in %s on line %d +Done http://cvs.php.net/viewvc.cgi/php-src/ext/standard/tests/strings/addcslashes.phpt?r1=1.2&r2=1.3&diff_format=u Index: php-src/ext/standard/tests/strings/addcslashes.phpt http://cvs.php.net/viewvc.cgi/php-src/ext/standard/tests/strings/implode1.phpt?r1=1.2&r2=1.3&diff_format=u Index: php-src/ext/standard/tests/strings/implode1.phpt http://cvs.php.net/viewvc.cgi/php-src/ext/standard/tests/strings/str_repeat.phpt?r1=1.3&r2=1.4&diff_format=u Index: php-src/ext/standard/tests/strings/str_repeat.phpt http://cvs.php.net/viewvc.cgi/php-src/ext/standard/tests/strings/str_replace.phpt?r1=1.3&r2=1.4&diff_format=u Index: php-src/ext/standard/tests/strings/str_replace.phpt diff -u php-src/ext/standard/tests/strings/str_replace.phpt:1.3 php-src/ext/standard/tests/strings/str_replace.phpt:1.4 --- php-src/ext/standard/tests/strings/str_replace.phpt:1.3 Sat May 12 12:12:26 2007 +++ php-src/ext/standard/tests/strings/str_replace.phpt Mon May 14 13:05:29 2007 @@ -1,5 +1,7 @@ --TEST-- Test str_replace() function +--INI-- +precision=14 --FILE-- <?php /* @@ -246,7 +248,7 @@ int(1) string(0) "" int(0) -string(14) "Resource id #5" +string(%d) "Resource id #%d" int(1) *** Testing str_replace() with various search values *** @@ -908,9 +910,9 @@ int(1) -- Testing Resources -- -string(14) "Resource id #6" +string(%d) "Resource id #%d" int(0) -string(14) "Resource id #7" +string(%d) "Resource id #%d" int(0) -- Testing a longer and heredoc string -- @@ -954,3 +956,721 @@ Warning: str_replace() expects at most 4 parameters, 5 given in %s on line %d NULL Done +--UEXPECTF-- +*** Testing str_replace() on basic operations *** +unicode(0) "" +unicode(4) "tbst" +unicode(0) "" +int(0) +unicode(1) "q" +int(1) +unicode(0) "" +int(0) +unicode(%d) "Resource id #%d" +int(1) + +*** Testing str_replace() with various search values *** +-- Iteration 0 -- +array(12) { + [0]=> + unicode(5) "FOUND" + [1]=> + unicode(0) "" + [2]=> + unicode(5) "FOUND" + [3]=> + unicode(1) "0" + [4]=> + unicode(6) "-FOUND" + [5]=> + unicode(5) "FOUND" + [6]=> + unicode(1) "0" + [7]=> + unicode(6) "-FOUND" + [8]=> + unicode(0) "" + [9]=> + array(0) { + } + [10]=> + unicode(3) "php" + [11]=> + unicode(0) "" +} +int(5) + +-- Iteration 1 -- +array(12) { + [0]=> + unicode(1) "1" + [1]=> + unicode(0) "" + [2]=> + unicode(1) "1" + [3]=> + unicode(1) "0" + [4]=> + unicode(2) "-1" + [5]=> + unicode(1) "1" + [6]=> + unicode(1) "0" + [7]=> + unicode(2) "-1" + [8]=> + unicode(0) "" + [9]=> + array(0) { + } + [10]=> + unicode(3) "php" + [11]=> + unicode(0) "" +} +int(0) + +-- Iteration 2 -- +array(12) { + [0]=> + unicode(5) "FOUND" + [1]=> + unicode(0) "" + [2]=> + unicode(5) "FOUND" + [3]=> + unicode(1) "0" + [4]=> + unicode(6) "-FOUND" + [5]=> + unicode(5) "FOUND" + [6]=> + unicode(1) "0" + [7]=> + unicode(6) "-FOUND" + [8]=> + unicode(0) "" + [9]=> + array(0) { + } + [10]=> + unicode(3) "php" + [11]=> + unicode(0) "" +} +int(5) + +-- Iteration 3 -- +array(12) { + [0]=> + unicode(1) "1" + [1]=> + unicode(0) "" + [2]=> + unicode(1) "1" + [3]=> + unicode(5) "FOUND" + [4]=> + unicode(2) "-1" + [5]=> + unicode(1) "1" + [6]=> + unicode(5) "FOUND" + [7]=> + unicode(2) "-1" + [8]=> + unicode(0) "" + [9]=> + array(0) { + } + [10]=> + unicode(3) "php" + [11]=> + unicode(0) "" +} +int(2) + +-- Iteration 4 -- +array(12) { + [0]=> + unicode(1) "1" + [1]=> + unicode(0) "" + [2]=> + unicode(1) "1" + [3]=> + unicode(1) "0" + [4]=> + unicode(5) "FOUND" + [5]=> + unicode(1) "1" + [6]=> + unicode(1) "0" + [7]=> + unicode(5) "FOUND" + [8]=> + unicode(0) "" + [9]=> + array(0) { + } + [10]=> + unicode(3) "php" + [11]=> + unicode(0) "" +} +int(2) + +-- Iteration 5 -- +array(12) { + [0]=> + unicode(5) "FOUND" + [1]=> + unicode(0) "" + [2]=> + unicode(5) "FOUND" + [3]=> + unicode(1) "0" + [4]=> + unicode(6) "-FOUND" + [5]=> + unicode(5) "FOUND" + [6]=> + unicode(1) "0" + [7]=> + unicode(6) "-FOUND" + [8]=> + unicode(0) "" + [9]=> + array(0) { + } + [10]=> + unicode(3) "php" + [11]=> + unicode(0) "" +} +int(5) + +-- Iteration 6 -- +array(12) { + [0]=> + unicode(1) "1" + [1]=> + unicode(0) "" + [2]=> + unicode(1) "1" + [3]=> + unicode(5) "FOUND" + [4]=> + unicode(2) "-1" + [5]=> + unicode(1) "1" + [6]=> + unicode(5) "FOUND" + [7]=> + unicode(2) "-1" + [8]=> + unicode(0) "" + [9]=> + array(0) { + } + [10]=> + unicode(3) "php" + [11]=> + unicode(0) "" +} +int(2) + +-- Iteration 7 -- +array(12) { + [0]=> + unicode(1) "1" + [1]=> + unicode(0) "" + [2]=> + unicode(1) "1" + [3]=> + unicode(1) "0" + [4]=> + unicode(5) "FOUND" + [5]=> + unicode(1) "1" + [6]=> + unicode(1) "0" + [7]=> + unicode(5) "FOUND" + [8]=> + unicode(0) "" + [9]=> + array(0) { + } + [10]=> + unicode(3) "php" + [11]=> + unicode(0) "" +} +int(2) + +-- Iteration 8 -- +array(12) { + [0]=> + unicode(1) "1" + [1]=> + unicode(0) "" + [2]=> + unicode(1) "1" + [3]=> + unicode(1) "0" + [4]=> + unicode(2) "-1" + [5]=> + unicode(1) "1" + [6]=> + unicode(1) "0" + [7]=> + unicode(2) "-1" + [8]=> + unicode(0) "" + [9]=> + array(0) { + } + [10]=> + unicode(3) "php" + [11]=> + unicode(0) "" +} +int(0) + +-- Iteration 9 -- +array(12) { + [0]=> + unicode(1) "1" + [1]=> + unicode(0) "" + [2]=> + unicode(1) "1" + [3]=> + unicode(1) "0" + [4]=> + unicode(2) "-1" + [5]=> + unicode(1) "1" + [6]=> + unicode(1) "0" + [7]=> + unicode(2) "-1" + [8]=> + unicode(0) "" + [9]=> + array(0) { + } + [10]=> + unicode(3) "php" + [11]=> + unicode(0) "" +} +int(0) + +-- Iteration 10 -- +array(12) { + [0]=> + unicode(1) "1" + [1]=> + unicode(0) "" + [2]=> + unicode(1) "1" + [3]=> + unicode(1) "0" + [4]=> + unicode(2) "-1" + [5]=> + unicode(1) "1" + [6]=> + unicode(1) "0" + [7]=> + unicode(2) "-1" + [8]=> + unicode(0) "" + [9]=> + array(0) { + } + [10]=> + unicode(5) "FOUND" + [11]=> + unicode(0) "" +} +int(1) + +-- Iteration 11 -- +array(12) { + [0]=> + unicode(1) "1" + [1]=> + unicode(0) "" + [2]=> + unicode(1) "1" + [3]=> + unicode(1) "0" + [4]=> + unicode(2) "-1" + [5]=> + unicode(1) "1" + [6]=> + unicode(1) "0" + [7]=> + unicode(2) "-1" + [8]=> + unicode(0) "" + [9]=> + array(0) { + } + [10]=> + unicode(3) "php" + [11]=> + unicode(0) "" +} +int(0) + +*** Testing str_replace() with various subjects *** +--- Iteration 0 --- +-- String after replacing the search value is => -- +unicode(177) "Hello, world,0120333.3445-1.234567 NULL TRUE FALSE+ + ?FOUND chr(0).chr(128).chr(234).chr(65).chr(255).chr(256)" +-- search string has found '2' times + +--- Iteration 1 --- +-- String after replacing the search value is => -- +unicode(177) "Hello, world,0120333.3445-1.234567 NULL TRUE FALSE+ + ?FOUND chr(0).chr(128).chr(234).chr(65).chr(255).chr(256)" +-- search string has found '2' times + +--- Iteration 2 --- +-- String after replacing the search value is => -- +unicode(182) "Hello, world,0120333.3445-1.234567 NULL TRUE FALSE+ + ?Hello, World chr(0).chr(128).chr(234).chr(65).chr(255).chr(256)" +-- search string has found '1' times + +--- Iteration 3 --- +-- String after replacing the search value is => -- +unicode(191) "Hello, world,0120333.3445-1.234567 NULL TRUE FALSE+ + ?Hello, World chr(0).chr(128).chr(234).chr(65).chr(255).chr(256)" +-- search string has found '0' times + +--- Iteration 4 --- +-- String after replacing the search value is => -- +unicode(182) "Hello, world,0120333.3445-1.234567 NULL TRUE FALSE+ + ?Hello, World chr(0).chr(128).chr(234).chr(65).chr(255).chr(256)" +-- search string has found '1' times + +--- Iteration 5 --- +-- String after replacing the search value is => -- +unicode(191) "Hello, world,0120333.3445-1.234567 NULL TRUE FALSE+ + ?Hello, World chr(0).chr(128).chr(234).chr(65).chr(255).chr(256)" +-- search string has found '0' times + +--- Iteration 6 --- +-- String after replacing the search value is => -- +unicode(191) "Hello, world,0120333.3445-1.234567 NULL TRUE FALSE+ + ?Hello, World chr(0).chr(128).chr(234).chr(65).chr(255).chr(256)" +-- search string has found '0' times + +--- Iteration 7 --- +-- String after replacing the search value is => -- +unicode(189) "Hello, world,0120333.3445FOUND67 NULL TRUE FALSE+ + ?Hello, World chr(0).chr(128).chr(234).chr(65).chr(255).chr(256)" +-- search string has found '1' times + +--- Iteration 8 --- +-- String after replacing the search value is => -- +unicode(191) "Hello, world,0120333.3445-1.234567 NULL TRUE FALSE+ + ?Hello, World chr(0).chr(128).chr(234).chr(65).chr(255).chr(256)" +-- search string has found '0' times + +--- Iteration 9 --- +-- String after replacing the search value is => -- +unicode(193) "Hello, world,0120333.3445-1.234567 NULL TRUE FALSE+ + ?Hello, World chr(0).chr(128).chr(234).chr(65).chr(255).chr(256)" +-- search string has found '2' times + +--- Iteration 10 --- +-- String after replacing the search value is => -- +unicode(193) "Hello, world,0120333.3445-1.234567 NULL TRUE FALSE+ + ?Hello, World chr(0).chr(128).chr(234).chr(65).chr(255).chr(256)" +-- search string has found '1' times + +--- Iteration 11 --- +-- String after replacing the search value is => -- +unicode(191) "Hello, world,0120333.3445-1.234567 NULL TRUE FALSE+ + ?Hello, World chr(0).chr(128).chr(234).chr(65).chr(255).chr(256)" +-- search string has found '0' times + +--- Iteration 12 --- +-- String after replacing the search value is => -- +unicode(192) "Hello, world,0120333.3445-1.234567 FOUND TRUE FALSE+ + ?Hello, World chr(0).chr(128).chr(234).chr(65).chr(255).chr(256)" +-- search string has found '1' times + +--- Iteration 13 --- +-- String after replacing the search value is => -- +unicode(207) "Hello, world,FOUND12FOUND333.3445-1.234567 NULL TRUE FALSE+ + ?Hello, World chr(FOUND).chr(128).chr(234).chr(65).chr(255).chr(256)" +-- search string has found '4' times + +--- Iteration 14 --- +-- String after replacing the search value is => -- +unicode(207) "Hello, world,FOUND12FOUND333.3445-1.234567 NULL TRUE FALSE+ + ?Hello, World chr(FOUND).chr(128).chr(234).chr(65).chr(255).chr(256)" +-- search string has found '4' times + +--- Iteration 15 --- +-- String after replacing the search value is => -- +unicode(191) "Hello, world,0120333.3445-1.234567 NULL TRUE FALSE+ + ?Hello, World chr(0).chr(128).chr(234).chr(65).chr(255).chr(256)" +-- search string has found '0' times + +--- Iteration 16 --- +-- String after replacing the search value is => -- +unicode(307) "Hello,FOUNDworld,0120333.3445-1.234567FOUNDFOUNDFOUNDFOUNDFOUNDFOUNDFOUNDFOUNDFOUNDFOUNDNULLFOUNDTRUEFOUNDFALSE+FOUND FOUNDFOUNDFOUNDFOUND+ FOUNDFOUNDFOUNDFOUND?Hello,FOUNDWorldFOUNDchr(0).chr(128).chr(234).chr(65).chr(255).chr(256)" +-- search string has found '29' times + +--- Iteration 17 --- +-- String after replacing the search value is => -- +unicode(203) "Hello, world,0120333.3445-1.234567 NULL TRUE FALSEFOUND + FOUND0«CDFOUNDabcd \xXYZ abcd $$@#%^&*!~,.:;?: !!Hello, World + ?Hello, World chr(0).chr(128).chr(234).chr(65).chr(255).chr(256)" +-- search string has found '3' times + +--- Iteration 18 --- +-- String after replacing the search value is => -- +unicode(194) "Hello, world,0120333.3445-1.234567 NULL TRUE FALSE+ FOUND«CD+ ?Hello, World chr(0).chr(128).chr(234).chr(65).chr(255).chr(256)" +-- search string has found '1' times + +--- Iteration 19 --- +-- String after replacing the search value is => -- +unicode(194) "Hello, world,0120333.3445-1.234567 NULL TRUE FALSE+ + ?Hello, World chr(0).chr(128).chr(234).chr(65).chr(255).chr(256)" +-- search string has found '1' times + +--- Iteration 20 --- +-- String after replacing the search value is => -- +unicode(194) "Hello, world,0120333.3445-1.234567 NULL TRUE FALSE+ FOUND«CD+ ?Hello, World chr(0).chr(128).chr(234).chr(65).chr(255).chr(256)" +-- search string has found '1' times + +--- Iteration 21 --- +-- String after replacing the search value is => -- +unicode(194) "Hello, world,0120333FOUND445-1.234567 NULL TRUE FALSE+ + ?Hello, World chr(0).chr(128).chr(234).chr(65).chr(255).chr(256)" +-- search string has found '1' times + +--- Iteration 22 --- +-- String after replacing the search value is => -- +unicode(203) "Hello, world,0FOUND20333.3445-FOUND.234567 NULL TRUE FALSE+ + ?Hello, World chr(0).chr(FOUND28).chr(234).chr(65).chr(255).chr(256)" +-- search string has found '3' times + +--- Iteration 23 --- +-- String after replacing the search value is => -- +unicode(192) "Hello, world,0120333.3445-1.234567 NULL FOUND FALSE+ + ?Hello, World chr(0).chr(128).chr(234).chr(65).chr(255).chr(256)" +-- search string has found '1' times + +--- Iteration 24 --- +-- String after replacing the search value is => -- +unicode(203) "Hello, world,0FOUND20333.3445-FOUND.234567 NULL TRUE FALSE+ + ?Hello, World chr(0).chr(FOUND28).chr(234).chr(65).chr(255).chr(256)" +-- search string has found '3' times + +--- Iteration 25 --- +-- String after replacing the search value is => -- +unicode(203) "Hello, world,0FOUND20333.3445-FOUND.234567 NULL TRUE FALSE+ + ?Hello, World chr(0).chr(FOUND28).chr(234).chr(65).chr(255).chr(256)" +-- search string has found '3' times + +--- Iteration 26 --- +-- String after replacing the search value is => -- +unicode(191) "Hello, world,0120333.3445-1.234567 NULL TRUE FALSE+ + ?Hello, World chr(0).chr(128).chr(234).chr(65).chr(255).chr(256)" +-- search string has found '0' times + +--- Iteration 27 --- +-- String after replacing the search value is => -- +unicode(191) "Hello, world,0120333.3445-1.234567 NULL TRUE FOUND+ + ?Hello, World chr(0).chr(128).chr(234).chr(65).chr(255).chr(256)" +-- search string has found '1' times + +--- Iteration 28 --- +-- String after replacing the search value is => -- +unicode(307) "Hello,FOUNDworld,0120333.3445-1.234567FOUNDFOUNDFOUNDFOUNDFOUNDFOUNDFOUNDFOUNDFOUNDFOUNDNULLFOUNDTRUEFOUNDFALSE+FOUND FOUNDFOUNDFOUNDFOUND+ FOUNDFOUNDFOUNDFOUND?Hello,FOUNDWorldFOUNDchr(0).chr(128).chr(234).chr(65).chr(255).chr(256)" +-- search string has found '29' times + +--- Iteration 29 --- +-- String after replacing the search value is => -- +unicode(186) "Hello, world,0120333.3445-1.234567FOUNDNULL TRUE FALSE+ + ?Hello, World chr(0).chr(128).chr(234).chr(65).chr(255).chr(256)" +-- search string has found '1' times + +--- Iteration 30 --- +-- String after replacing the search value is => -- +unicode(199) "Hello, world,0120333.3445-1.234567 NULL TRUE FALSE+ + ?Hello, World chr(0).chr(128).chr(234).chr(65).chr(255).chr(256)" +-- search string has found '2' times + +--- Iteration 31 --- +-- String after replacing the search value is => -- +unicode(191) "Hello, world,0120333.3445-1.234567 NULL TRUE FALSE+ + ?Hello, World chr(0).chr(128).chr(234).chr(65).chr(255).chr(256)" +-- search string has found '0' times + +--- Iteration 32 --- +-- String after replacing the search value is => -- +unicode(203) "Hello, world,0120333.3445-1.234567 NULL TRUE FALSE+ FOUND +FOUND ?Hello, World chr(0).chr(128).chr(234).chr(65).chr(255).chr(256)" +-- search string has found '3' times + +--- Iteration 33 --- +-- String after replacing the search value is => -- +unicode(191) "Hello, world,0120333.3445-1.234567 NULL TRUE FALSE+ + ?Hello, World chr(0).chr(128).chr(234).chr(65).chr(255).chr(256)" +-- search string has found '0' times + +--- Iteration 34 --- +-- String after replacing the search value is => -- +unicode(5) "FOUND" +-- search string has found '1' times + +*** Testing Miscelleneous input data *** +unicode(3) "qqq" +int(5) +array(3) { + [0]=> + unicode(3) "qqq" + [1]=> + unicode(0) "" + [2]=> + unicode(3) "ccc" +} +int(6) + +-- Testing objects -- +unicode(12) "Hello, world" +int(1) + +-- Testing arrays -- +unicode(15) "multimultimulti" +int(3) +unicode(3) "qqq" +int(3) +array(2) { + [0]=> + unicode(3) "qqq" + [1]=> + unicode(3) "ccc" +} +int(6) + +Notice: Array to string conversion in %s on line %d +array(2) { + [0]=> + unicode(15) "ArrayArrayArray" + [1]=> + unicode(3) "bbb" +} +int(3) +array(2) { + [0]=> + unicode(3) "111" + [1]=> + unicode(3) "bbb" +} +int(3) +array(2) { + [0]=> + unicode(4) "aaa3" + [1]=> + unicode(4) "2bbb" +} +int(1) + +-- Testing Resources -- +unicode(%d) "Resource id #%d" +int(0) +unicode(%d) "Resource id #%d" +int(0) + +-- Testing a longer and heredoc string -- +unicode(623) "FOUNDghijklmnopqrstuvwxyz0123456789FOUNDghijklmnopqrstuvwxyz0123456789 +FOUNDghijklmnopqrstuvwxyz0123456789FOUNDghijklmnopqrstuvwxyz0123456789 +FOUNDghijklmnopqrstuvwxyz0123456789FOUNDghijklmnopqrstuvwxyz0123456789 +FOUNDghijklmnopqrstuvwxyz0123456789FOUNDghijklmnopqrstuvwxyz0123456789 +FOUNDghijklmnopqrstuvwxyz0123456789FOUNDghijklmnopqrstuvwxyz0123456789 +FOUNDghijklmnopqrstuvwxyz0123456789FOUNDghijklmnopqrstuvwxyz0123456789 +FOUNDghijklmnopqrstuvwxyz0123456789FOUNDghijklmnopqrstuvwxyz0123456789 +@#$%^&**&^%$#@!~:())))((((&&&**%$###@@@!!!~~~~@###$%^&* +FOUNDghijklmnopqrstuvwxyz0123456789FOUNDghijklmnopqrstuvwxyz0123456789" +int(16) + +-- Testing a heredoc null string -- +unicode(0) "" +int(0) + +-- Testing simple and complex syntax strings -- +unicode(5) "FOUND" +unicode(5) "FOUND" + +Notice: Undefined variable: strS in %s on line %d +unicode(0) "" +unicode(5) "FOUND" +unicode(5) "FOUND" + +*** Testing error conditions *** +Warning: str_replace() expects at least 3 parameters, 0 given in %s on line %d +NULL + +Warning: str_replace() expects at least 3 parameters, 1 given in %s on line %d +NULL + +Warning: str_replace() expects at least 3 parameters, 1 given in %s on line %d +NULL + +Warning: str_replace() expects at least 3 parameters, 2 given in %s on line %d +NULL + +Warning: str_replace() expects at most 4 parameters, 5 given in %s on line %d +NULL +Done http://cvs.php.net/viewvc.cgi/php-src/ext/standard/tests/strings/strpos.phpt?r1=1.3&r2=1.4&diff_format=u Index: php-src/ext/standard/tests/strings/strpos.phpt diff -u php-src/ext/standard/tests/strings/strpos.phpt:1.3 php-src/ext/standard/tests/strings/strpos.phpt:1.4 --- php-src/ext/standard/tests/strings/strpos.phpt:1.3 Sat May 12 12:12:26 2007 +++ php-src/ext/standard/tests/strings/strpos.phpt Mon May 14 13:05:29 2007 @@ -1,5 +1,7 @@ --TEST-- Test strpos() function +--INI-- +precision=14 --FILE-- <?php /* Prototype: int strpos ( string $haystack, mixed $needle [, int $offset] ); @@ -331,3 +333,146 @@ bool(false) Done +--UEXPECTF-- +*** Testing basic functionality of strpos() *** +int(0) +int(5) +int(5) +int(3) +int(10) +int(2) +bool(false) +bool(false) +bool(false) +bool(false) +bool(false) +int(1) + +*** Testing stropos() to find various needles and a long string *** +Position of 'Hello world' is => int(0) +Position of 'WORLD' is => bool(false) +Position of '+Position of '+Position of '+Position of 'abcd' is => int(48) +Position of 'xyz' is => int(54) +Position of 'octal' is => int(61) +Position of '-3' is => int(19) +Position of '-3' is => +Warning: Needle argument codepoint value out of range (0 - 0x10FFFF) in %s on line %d +bool(false) +Position of '-3.344' is => int(19) +Position of '-3.344' is => +Warning: Needle argument codepoint value out of range (0 - 0x10FFFF) in %s on line %d +bool(false) +Position of '' is => int(46) +Position of 'NULL' is => int(31) +Position of '0' is => int(12) +Position of '0' is => int(46) +Position of '1' is => bool(false) +Position of 'TRUE' is => int(36) +Position of '1' is => int(13) +Position of '1' is => bool(false) +Position of '' is => int(46) +Position of 'FALSE' is => int(41) +Position of ' ' is => int(5) +Position of ' ' is => int(26) +Position of 'b' is => int(49) +Position of '\n' is => bool(false) +Position of ' +' is => int(66) +Position of '12' is => int(13) +Position of '12twelve' is => bool(false) +Position of 'Hello world,012033 -3.3445 NULL TRUE FALSE+ +abcd$:Hello world' is => int(0) + +*** Testing strpos() with possible variations in offset *** +Position of 'Hello' with offset '1' is => int(74) +Position of 'Hello' with offset '' is => int(0) +Position of 'Hello' with offset '1' is => int(74) +Position of 'Hello' with offset '' is => int(0) +Position of 'Hello' with offset '' is => int(0) + +*** Testing Miscelleneous input data *** +-- Passing objects as string and needle -- +int(7) + +-- Passing an array as string and needle -- + +Warning: strpos() expects parameter 1 to be string (Unicode or binary), array given in %s on line %d +NULL +int(5) +int(12) + +-- Passing Resources as string and needle -- + +Warning: strpos() expects parameter 1 to be string (Unicode or binary), resource given in %s on line %d +NULL + +Warning: strpos() expects parameter 1 to be string (Unicode or binary), resource given in %s on line %d +NULL + +-- Posiibilities with null -- +bool(false) +bool(false) +bool(false) +int(2) + +-- A longer and heredoc string -- +int(0) +int(73) +int(73) +int(728) + +-- A heredoc null string -- +bool(false) +bool(false) +bool(false) + +-- simple and complex syntax strings -- +int(7) +int(7) + +Notice: Undefined variable: needleS in %s on line %d + +Warning: strpos(): Empty delimiter in %s on line %d +bool(false) +int(7) +int(7) + +-- complex strings containing other than 7-bit chars -- +-- Positions of some chars in the string '%s' are as follows -- +%s => int(1) +%s => int(6) +%s => bool(false) + +*** Testing error conditions *** +Warning: strpos(): Empty delimiter in %s on line %d +bool(false) + +Warning: strpos() expects at least 2 parameters, 0 given in %s on line %d +NULL + +Warning: strpos() expects at least 2 parameters, 1 given in %s on line %d +NULL + +Warning: strpos() expects at least 2 parameters, 1 given in %s on line %d +NULL + +Warning: strpos() expects parameter 3 to be long, Unicode string given in %s on line %d +NULL + +Warning: strpos() expects at most 3 parameters, 4 given in %s on line %d +NULL + +Warning: strpos(): Offset not contained in string in %s on line %d +bool(false) + +Warning: strpos(): Offset not contained in string in %s on line %d +bool(false) + +Warning: strpos(): Empty delimiter in %s on line %d +bool(false) + +Done http://cvs.php.net/viewvc.cgi/php-src/ext/standard/tests/strings/ucfirst1.phpt?r1=1.2&r2=1.3&diff_format=u Index: php-src/ext/standard/tests/strings/ucfirst1.phpt diff -u php-src/ext/standard/tests/strings/ucfirst1.phpt:1.2 php-src/ext/standard/tests/strings/ucfirst1.phpt:1.3 --- php-src/ext/standard/tests/strings/ucfirst1.phpt:1.2 Fri Apr 20 21:37:31 2007 +++ php-src/ext/standard/tests/strings/ucfirst1.phpt Mon May 14 13:05:29 2007 @@ -1,5 +1,7 @@ --TEST-- ucfirst() function +--INI-- +precision=14 --FILE-- <?php /* Make a string's first character uppercase */
« previous php.cvs (#44298) next »