import zend standard tests

Lots of the win32 ones work for creating but not removing.
Esse commit está contido em:
Paul Tarjan
2013-04-24 11:38:20 -07:00
commit de Sara Golemon
commit 991fef8842
6150 arquivos alterados com 426173 adições e 21 exclusões
@@ -0,0 +1,80 @@
<?php
/* Prototype: mixed array_shift( array &array );
* Description: Shifts the first value of the array off and returns it.
*/
array_shift($GLOBALS);
$empty_array = array();
$number = 5;
$str = "abc";
/* Various combinations of arrays to be used for the test */
$mixed_array = array(
array(),
array( 1,2,3,4,5,6,7,8,9 ),
array( "One", "_Two", "Three", "Four", "Five" ),
array( 6, "six", 7, "seven", 8, "eight", 9, "nine" ),
array( "a" => "aaa", "A" => "AAA", "c" => "ccc", "d" => "ddd", "e" => "eee" ),
array( "1" => "one", "2" => "two", "3" => "three", "4" => "four", "5" => "five" ),
array( 1 => "one", 2 => "two", 3 => 7, 4 => "four", 5 => "five" ),
array( "f" => "fff", "1" => "one", 4 => 6, "" => "blank", 2.4 => "float", "F" => "FFF",
"blank" => "", 3.7 => 3.7, 5.4 => 7, 6 => 8.6, '5' => "Five", "4name" => "jonny", "a" => NULL, NULL => 3 ),
array( 12, "name", 'age', '45' ),
array( array("oNe", "tWo", 4), array(10, 20, 30, 40, 50), array() ),
array( "one" => 1, "one" => 2, "three" => 3, 3, 4, 3 => 33, 4 => 44, 5, 6,
5.4 => 54, 5.7 => 57, "5.4" => 554, "5.7" => 557 )
);
/* Testing Error Conditions */
echo "\n*** Testing Error Conditions ***\n";
/* Zero argument */
var_dump( array_shift() );
/* Scalar argument */
var_dump( array_shift($number) );
/* String argument */
var_dump( array_shift($str) );
/* Invalid Number of arguments */
var_dump( array_shift($mixed_array[1],$mixed_array[2]) );
/* Empty Array as argument */
var_dump( array_shift($empty_array) );
/* Loop to test normal functionality with different arrays inputs */
echo "\n*** Testing with various array inputs ***\n";
$counter = 1;
foreach( $mixed_array as $sub_array ) {
echo "\n-- Input Array for Iteration $counter is -- \n";
print_r( $sub_array );
echo "\nOutput after shift is :\n";
var_dump( array_shift($sub_array) );
$counter++;
}
/*Checking for internal array pointer beint reset when shift is called */
echo"\n*** Checking for internal array pointer being reset when shift is called ***\n";
echo "\nCurrent Element is : ";
var_dump( current($mixed_array[1]) );
echo "\nNext Element is : ";
var_dump( next($mixed_array[1]) );
echo "\nNext Element is : ";
var_dump( next($mixed_array[1]) );
echo "\nshifted Element is : ";
var_dump( array_shift($mixed_array[1]) );
echo "\nCurrent Element after shift operation is: ";
var_dump( current($mixed_array[1]) );
echo"Done";
?>
@@ -0,0 +1,203 @@
*** Testing Error Conditions ***
HipHop Warning: %a
NULL
HipHop Warning: %a
NULL
HipHop Warning: %a
NULL
HipHop Warning: %a
NULL
NULL
*** Testing with various array inputs ***
-- Input Array for Iteration 1 is --
Array
(
)
Output after shift is :
NULL
-- Input Array for Iteration 2 is --
Array
(
[0] => 1
[1] => 2
[2] => 3
[3] => 4
[4] => 5
[5] => 6
[6] => 7
[7] => 8
[8] => 9
)
Output after shift is :
int(1)
-- Input Array for Iteration 3 is --
Array
(
[0] => One
[1] => _Two
[2] => Three
[3] => Four
[4] => Five
)
Output after shift is :
string(3) "One"
-- Input Array for Iteration 4 is --
Array
(
[0] => 6
[1] => six
[2] => 7
[3] => seven
[4] => 8
[5] => eight
[6] => 9
[7] => nine
)
Output after shift is :
int(6)
-- Input Array for Iteration 5 is --
Array
(
[a] => aaa
[A] => AAA
[c] => ccc
[d] => ddd
[e] => eee
)
Output after shift is :
string(3) "aaa"
-- Input Array for Iteration 6 is --
Array
(
[1] => one
[2] => two
[3] => three
[4] => four
[5] => five
)
Output after shift is :
string(3) "one"
-- Input Array for Iteration 7 is --
Array
(
[1] => one
[2] => two
[3] => 7
[4] => four
[5] => five
)
Output after shift is :
string(3) "one"
-- Input Array for Iteration 8 is --
Array
(
[f] => fff
[1] => one
[4] => 6
[] => 3
[2] => float
[F] => FFF
[blank] =>
[3] => 3.7
[5] => Five
[6] => 8.6
[4name] => jonny
[a] =>
)
Output after shift is :
string(3) "fff"
-- Input Array for Iteration 9 is --
Array
(
[0] => 12
[1] => name
[2] => age
[3] => 45
)
Output after shift is :
int(12)
-- Input Array for Iteration 10 is --
Array
(
[0] => Array
(
[0] => oNe
[1] => tWo
[2] => 4
)
[1] => Array
(
[0] => 10
[1] => 20
[2] => 30
[3] => 40
[4] => 50
)
[2] => Array
(
)
)
Output after shift is :
array(3) {
[0]=>
string(3) "oNe"
[1]=>
string(3) "tWo"
[2]=>
int(4)
}
-- Input Array for Iteration 11 is --
Array
(
[one] => 2
[three] => 3
[0] => 3
[1] => 4
[3] => 33
[4] => 44
[5] => 57
[6] => 6
[5.4] => 554
[5.7] => 557
)
Output after shift is :
int(2)
*** Checking for internal array pointer being reset when shift is called ***
Current Element is : int(1)
Next Element is : int(2)
Next Element is : int(3)
shifted Element is : int(1)
Current Element after shift operation is: int(2)
Done
+119
Ver Arquivo
@@ -0,0 +1,119 @@
<?php
$a = array(1,"big"=>2,3,6,3,5,3,3,3,3,3,3,3,3,3,3);
$b = array(2,2,3,3,3,3,3,3,3,3,3,3,3,3,3);
$c = array(-1,1);
echo '$a='.var_export($a,TRUE).";\n";
echo '$b='.var_export($b,TRUE).";\n";
echo '$c='.var_export($c,TRUE).";\n";
var_dump(array_diff($a,$b,$c));
var_dump(array_diff_assoc($a,$b,$c));
$a = array(
'a'=>2,
'b'=>'some',
'c'=>'done',
'z'=>'foo',
'f'=>5,
'fan'=>'fen',
7=>18,
9=>25,
11=>42,
12=>42,
45=>42,
73=>'foo',
95=>'some',
'som3'=>'some',
'want'=>'wanna');
$b = array(
'a'=>7,
7=>18,
9=>13,
11=>42,
45=>46,
'som3'=>'some',
'foo'=>'some',
'goo'=>'foo',
'f'=>5,
'z'=>'equal'
);
$c = array(
73=>'foo',
95=>'some');
echo '$a='.var_export($a,TRUE).";\n";
echo '$b='.var_export($b,TRUE).";\n";
echo '$c='.var_export($c,TRUE).";\n";
echo "Results:\n\n";
var_dump(array_diff($a,$b,$c));
var_dump(array_diff_assoc($a,$b,$c));
echo "-=-=-=-=-=-=-=-=- New functionality from 5.0.0 -=-=-=-=-=-=-=-\n";
error_reporting(E_ALL);
class cr {
private $priv_member;
public $public_member;
function cr($val) {
$this->priv_member = $val;
$this->public_member = $val;
}
static function comp_func_cr($a, $b) {
if ($a->priv_member === $b->priv_member) return 0;
return ($a->priv_member > $b->priv_member)? 1:-1;
}
}
function comp_func($a, $b) {
if ($a === $b) return 0;
return ($a > $b)? 1:-1;
}
function comp_func_cr($a, $b) {
if ($a->public_member === $b->public_member) return 0;
return ($a->public_member > $b->public_member)? 1:-1;
}
/*
$a = array(1,"big"=>2,3,6,3,5,3,3,3,3,3,3,3,3,3,3);
$b = array(2,2,3,3,3,3,3,3,3,3,3,3,3,3,3);
$c = array(-1,1);
echo '$a='.var_export($a,TRUE).";\n";
echo '$b='.var_export($b,TRUE).";\n";
echo '$c='.var_export($c,TRUE).";\n";
var_dump(array_diff($a,$b,$c));
var_dump(array_diff_assoc($a,$b,$c));
var_dump(array_udiff($a, $b, $c, "comp_func"));
var_dump(array_diff_uassoc($a,$b,$c, "comp_func"));
*/
/*
$a = array(new cr(9),new cr(12),new cr(23),new cr(4),new cr(-15),);
$b = array(new cr(9),new cr(22),new cr( 3),new cr(4),new cr(-15),);
var_dump(array_udiff($a, $b, "comp_func_cr"));
*/
$a = array("0.1" => new cr(9), "0.5" => new cr(12), 0 => new cr(23), 1=> new cr(4), 2 => new cr(-15),);
$b = array("0.2" => new cr(9), "0.5" => new cr(22), 0 => new cr( 3), 1=> new cr(4), 2 => new cr(-15),);
echo '$a='.var_export($a,TRUE).";\n";
echo '$b='.var_export($b,TRUE).";\n";
echo 'var_dump(array_udiff_uassoc($a, $b, "comp_func_cr", "comp_func"));'."\n";
var_dump(array_udiff_uassoc($a, $b, "comp_func_cr", "comp_func"));
echo '$a='.var_export($a,TRUE).";\n";
echo '$b='.var_export($b,TRUE).";\n";
echo 'var_dump(array_udiff_uassoc($a, $b, array("cr", "comp_func_cr"), "comp_func"));'."\n";
var_dump(array_udiff_uassoc($a, $b, array("cr", "comp_func_cr"), "comp_func"));
echo '$a='.var_export($a,TRUE).";\n";
echo '$b='.var_export($b,TRUE).";\n";
echo 'var_dump(array_udiff($a, $b, "comp_func_cr"));'."\n";
var_dump(array_udiff($a, $b, "comp_func_cr"));
echo '$a='.var_export($a,TRUE).";\n";
echo '$b='.var_export($b,TRUE).";\n";
echo 'var_dump(array_udiff_assoc($a, $b, "comp_func_cr"));'."\n";
var_dump(array_udiff_assoc($a, $b, "comp_func_cr"));
?>
@@ -0,0 +1,430 @@
$a=array (
0 => 1,
'big' => 2,
1 => 3,
2 => 6,
3 => 3,
4 => 5,
5 => 3,
6 => 3,
7 => 3,
8 => 3,
9 => 3,
10 => 3,
11 => 3,
12 => 3,
13 => 3,
14 => 3,
);
$b=array (
0 => 2,
1 => 2,
2 => 3,
3 => 3,
4 => 3,
5 => 3,
6 => 3,
7 => 3,
8 => 3,
9 => 3,
10 => 3,
11 => 3,
12 => 3,
13 => 3,
14 => 3,
);
$c=array (
0 => -1,
1 => 1,
);
array(2) {
[2]=>
int(6)
[4]=>
int(5)
}
array(5) {
[0]=>
int(1)
["big"]=>
int(2)
[1]=>
int(3)
[2]=>
int(6)
[4]=>
int(5)
}
$a=array (
'a' => 2,
'b' => 'some',
'c' => 'done',
'z' => 'foo',
'f' => 5,
'fan' => 'fen',
7 => 18,
9 => 25,
11 => 42,
12 => 42,
45 => 42,
73 => 'foo',
95 => 'some',
'som3' => 'some',
'want' => 'wanna',
);
$b=array (
'a' => 7,
7 => 18,
9 => 13,
11 => 42,
45 => 46,
'som3' => 'some',
'foo' => 'some',
'goo' => 'foo',
'f' => 5,
'z' => 'equal',
);
$c=array (
73 => 'foo',
95 => 'some',
);
Results:
array(5) {
["a"]=>
int(2)
["c"]=>
string(4) "done"
["fan"]=>
string(3) "fen"
[9]=>
int(25)
["want"]=>
string(5) "wanna"
}
array(9) {
["a"]=>
int(2)
["b"]=>
string(4) "some"
["c"]=>
string(4) "done"
["z"]=>
string(3) "foo"
["fan"]=>
string(3) "fen"
[9]=>
int(25)
[12]=>
int(42)
[45]=>
int(42)
["want"]=>
string(5) "wanna"
}
-=-=-=-=-=-=-=-=- New functionality from 5.0.0 -=-=-=-=-=-=-=-
$a=array (
'0.1' =>
cr::__set_state(array(
'priv_member' => 9,
'public_member' => 9,
)),
'0.5' =>
cr::__set_state(array(
'priv_member' => 12,
'public_member' => 12,
)),
0 =>
cr::__set_state(array(
'priv_member' => 23,
'public_member' => 23,
)),
1 =>
cr::__set_state(array(
'priv_member' => 4,
'public_member' => 4,
)),
2 =>
cr::__set_state(array(
'priv_member' => -15,
'public_member' => -15,
)),
);
$b=array (
'0.2' =>
cr::__set_state(array(
'priv_member' => 9,
'public_member' => 9,
)),
'0.5' =>
cr::__set_state(array(
'priv_member' => 22,
'public_member' => 22,
)),
0 =>
cr::__set_state(array(
'priv_member' => 3,
'public_member' => 3,
)),
1 =>
cr::__set_state(array(
'priv_member' => 4,
'public_member' => 4,
)),
2 =>
cr::__set_state(array(
'priv_member' => -15,
'public_member' => -15,
)),
);
var_dump(array_udiff_uassoc($a, $b, "comp_func_cr", "comp_func"));
array(3) {
["0.1"]=>
object(cr)#%d (2) {
["priv_member":"cr":private]=>
int(9)
["public_member"]=>
int(9)
}
["0.5"]=>
object(cr)#%d (2) {
["priv_member":"cr":private]=>
int(12)
["public_member"]=>
int(12)
}
[0]=>
object(cr)#%d (2) {
["priv_member":"cr":private]=>
int(23)
["public_member"]=>
int(23)
}
}
$a=array (
'0.1' =>
cr::__set_state(array(
'priv_member' => 9,
'public_member' => 9,
)),
'0.5' =>
cr::__set_state(array(
'priv_member' => 12,
'public_member' => 12,
)),
0 =>
cr::__set_state(array(
'priv_member' => 23,
'public_member' => 23,
)),
1 =>
cr::__set_state(array(
'priv_member' => 4,
'public_member' => 4,
)),
2 =>
cr::__set_state(array(
'priv_member' => -15,
'public_member' => -15,
)),
);
$b=array (
'0.2' =>
cr::__set_state(array(
'priv_member' => 9,
'public_member' => 9,
)),
'0.5' =>
cr::__set_state(array(
'priv_member' => 22,
'public_member' => 22,
)),
0 =>
cr::__set_state(array(
'priv_member' => 3,
'public_member' => 3,
)),
1 =>
cr::__set_state(array(
'priv_member' => 4,
'public_member' => 4,
)),
2 =>
cr::__set_state(array(
'priv_member' => -15,
'public_member' => -15,
)),
);
var_dump(array_udiff_uassoc($a, $b, array("cr", "comp_func_cr"), "comp_func"));
array(3) {
["0.1"]=>
object(cr)#%d (2) {
["priv_member":"cr":private]=>
int(9)
["public_member"]=>
int(9)
}
["0.5"]=>
object(cr)#%d (2) {
["priv_member":"cr":private]=>
int(12)
["public_member"]=>
int(12)
}
[0]=>
object(cr)#%d (2) {
["priv_member":"cr":private]=>
int(23)
["public_member"]=>
int(23)
}
}
$a=array (
'0.1' =>
cr::__set_state(array(
'priv_member' => 9,
'public_member' => 9,
)),
'0.5' =>
cr::__set_state(array(
'priv_member' => 12,
'public_member' => 12,
)),
0 =>
cr::__set_state(array(
'priv_member' => 23,
'public_member' => 23,
)),
1 =>
cr::__set_state(array(
'priv_member' => 4,
'public_member' => 4,
)),
2 =>
cr::__set_state(array(
'priv_member' => -15,
'public_member' => -15,
)),
);
$b=array (
'0.2' =>
cr::__set_state(array(
'priv_member' => 9,
'public_member' => 9,
)),
'0.5' =>
cr::__set_state(array(
'priv_member' => 22,
'public_member' => 22,
)),
0 =>
cr::__set_state(array(
'priv_member' => 3,
'public_member' => 3,
)),
1 =>
cr::__set_state(array(
'priv_member' => 4,
'public_member' => 4,
)),
2 =>
cr::__set_state(array(
'priv_member' => -15,
'public_member' => -15,
)),
);
var_dump(array_udiff($a, $b, "comp_func_cr"));
array(2) {
["0.5"]=>
object(cr)#%d (2) {
["priv_member":"cr":private]=>
int(12)
["public_member"]=>
int(12)
}
[0]=>
object(cr)#%d (2) {
["priv_member":"cr":private]=>
int(23)
["public_member"]=>
int(23)
}
}
$a=array (
'0.1' =>
cr::__set_state(array(
'priv_member' => 9,
'public_member' => 9,
)),
'0.5' =>
cr::__set_state(array(
'priv_member' => 12,
'public_member' => 12,
)),
0 =>
cr::__set_state(array(
'priv_member' => 23,
'public_member' => 23,
)),
1 =>
cr::__set_state(array(
'priv_member' => 4,
'public_member' => 4,
)),
2 =>
cr::__set_state(array(
'priv_member' => -15,
'public_member' => -15,
)),
);
$b=array (
'0.2' =>
cr::__set_state(array(
'priv_member' => 9,
'public_member' => 9,
)),
'0.5' =>
cr::__set_state(array(
'priv_member' => 22,
'public_member' => 22,
)),
0 =>
cr::__set_state(array(
'priv_member' => 3,
'public_member' => 3,
)),
1 =>
cr::__set_state(array(
'priv_member' => 4,
'public_member' => 4,
)),
2 =>
cr::__set_state(array(
'priv_member' => -15,
'public_member' => -15,
)),
);
var_dump(array_udiff_assoc($a, $b, "comp_func_cr"));
array(3) {
["0.1"]=>
object(cr)#%d (2) {
["priv_member":"cr":private]=>
int(9)
["public_member"]=>
int(9)
}
["0.5"]=>
object(cr)#%d (2) {
["priv_member":"cr":private]=>
int(12)
["public_member"]=>
int(12)
}
[0]=>
object(cr)#%d (2) {
["priv_member":"cr":private]=>
int(23)
["public_member"]=>
int(23)
}
}
+115
Ver Arquivo
@@ -0,0 +1,115 @@
<?php
/* Prototype & Usage:
mixed key ( array &$array ) -> returns the index element of the current array position
mixed current ( array &$array ) -> returns the current element in the array
mixed next ( array &$array ) -> similar to current() but advances the internal pointer to next element
mixed reset ( array &$array ) -> Reset the internal pointer to first element
*/
$basic_arrays = array (
array(0), // array with element as 0
array(1), // array with single element
array(1,2, 3, -1, -2, -3), // array of integers
array(1.1, 2.2, 3.3, -1.1, -2.2, -3.3), // array of floats
array('a', 'b', 'c', "ab", "ac", "ad"), // string array
array("a" => "apple", "b" => "book", "c" => "cook"), // associative array
array('d' => 'drink', 'p' => 'port', 's' => 'set'), // another associative array
array(1 => 'One', 2 => 'two', 3 => "three") // associative array with key as integers
);
$varient_arrays = array (
array(), // empty array
array(""), // array with null string
array(NULL),// array with NULL
array(null),// array with null
array(NULL, true, null, "", 1), // mixed array
array(-1.5 => "test", -2 => "rest", 2.5 => "two",
"" => "string", 0 => "zero", "" => "" ) // mixed array
);
echo "*** Testing basic operations ***\n";
$loop_count = 1;
foreach ($basic_arrays as $sub_array ) {
echo "-- Iteration $loop_count --\n";
$loop_count++;
$c = count ($sub_array);
$c++; // increment by one to create the situation of accessing beyond array size
while ( $c ) {
var_dump( current($sub_array)); // current element
var_dump( key($sub_array) ); // key of the current element
var_dump( next($sub_array) ); // move to next element
$c --;
}
var_dump( reset($sub_array) ); // reset the internal pointer to first element
var_dump( key($sub_array) ); // access the array after reset
var_dump( $sub_array ); // dump the array to see that its intact
echo "\n";
}
echo "\n*** Testing possible variations ***\n";
$loop_count = 1;
foreach ($varient_arrays as $sub_array ) {
echo "-- Iteration $loop_count --\n";
$loop_count++;
$c = count ($sub_array);
$c++; // increment by one to create the situation of accessing beyond array size
while ( $c ) {
var_dump( current($sub_array)); // current element
var_dump( key($sub_array) ); // key of the current element
var_dump( next($sub_array) ); // move to next element
$c --;
}
var_dump( reset($sub_array) ); // reset the internal pointer to first element
var_dump( key($sub_array) ); // access the array after reset
var_dump( $sub_array ); // dump the array to see that its intact
echo "\n";
}
/*test these functions on array which is already unset */
echo "\n-- Testing variation: when array is unset --\n";
$unset_array = array (1);
unset($unset_array);
var_dump( current($unset_array) );
var_dump( key($unset_array) );
var_dump( next($unset_array) );
var_dump( reset($unset_array) );
echo "\n*** Testing error conditions ***\n";
//Zero argument, expected 1 argument
var_dump( key() );
var_dump( current() );
var_dump( reset() );
var_dump( next() );
// args more than expected, expected 1 argument
$temp_array = array(1);
var_dump( key($temp_array, $temp_array) );
var_dump( current($temp_array, $temp_array) );
var_dump( reset($temp_array, $temp_array) );
var_dump( next($temp_array, $temp_array) );
// invalid args type, valid arguement: array
$int_var = 1;
$float_var = 1.5;
$string = "string";
var_dump( key($int_var) );
var_dump( key($float_var) );
var_dump( key($string) );
var_dump( current($int_var) );
var_dump( current($float_var) );
var_dump( current($string) );
var_dump( next($int_var) );
var_dump( next($float_var) );
var_dump( next($string) );
var_dump( reset($int_var) );
var_dump( reset($float_var) );
var_dump( reset($string) );
echo "Done\n";
?>
@@ -0,0 +1,392 @@
*** Testing basic operations ***
-- Iteration 1 --
int(0)
int(0)
bool(false)
bool(false)
NULL
bool(false)
int(0)
int(0)
array(1) {
[0]=>
int(0)
}
-- Iteration 2 --
int(1)
int(0)
bool(false)
bool(false)
NULL
bool(false)
int(1)
int(0)
array(1) {
[0]=>
int(1)
}
-- Iteration 3 --
int(1)
int(0)
int(2)
int(2)
int(1)
int(3)
int(3)
int(2)
int(-1)
int(-1)
int(3)
int(-2)
int(-2)
int(4)
int(-3)
int(-3)
int(5)
bool(false)
bool(false)
NULL
bool(false)
int(1)
int(0)
array(6) {
[0]=>
int(1)
[1]=>
int(2)
[2]=>
int(3)
[3]=>
int(-1)
[4]=>
int(-2)
[5]=>
int(-3)
}
-- Iteration 4 --
float(1.1)
int(0)
float(2.2)
float(2.2)
int(1)
float(3.3)
float(3.3)
int(2)
float(-1.1)
float(-1.1)
int(3)
float(-2.2)
float(-2.2)
int(4)
float(-3.3)
float(-3.3)
int(5)
bool(false)
bool(false)
NULL
bool(false)
float(1.1)
int(0)
array(6) {
[0]=>
float(1.1)
[1]=>
float(2.2)
[2]=>
float(3.3)
[3]=>
float(-1.1)
[4]=>
float(-2.2)
[5]=>
float(-3.3)
}
-- Iteration 5 --
string(1) "a"
int(0)
string(1) "b"
string(1) "b"
int(1)
string(1) "c"
string(1) "c"
int(2)
string(2) "ab"
string(2) "ab"
int(3)
string(2) "ac"
string(2) "ac"
int(4)
string(2) "ad"
string(2) "ad"
int(5)
bool(false)
bool(false)
NULL
bool(false)
string(1) "a"
int(0)
array(6) {
[0]=>
string(1) "a"
[1]=>
string(1) "b"
[2]=>
string(1) "c"
[3]=>
string(2) "ab"
[4]=>
string(2) "ac"
[5]=>
string(2) "ad"
}
-- Iteration 6 --
string(5) "apple"
string(1) "a"
string(4) "book"
string(4) "book"
string(1) "b"
string(4) "cook"
string(4) "cook"
string(1) "c"
bool(false)
bool(false)
NULL
bool(false)
string(5) "apple"
string(1) "a"
array(3) {
["a"]=>
string(5) "apple"
["b"]=>
string(4) "book"
["c"]=>
string(4) "cook"
}
-- Iteration 7 --
string(5) "drink"
string(1) "d"
string(4) "port"
string(4) "port"
string(1) "p"
string(3) "set"
string(3) "set"
string(1) "s"
bool(false)
bool(false)
NULL
bool(false)
string(5) "drink"
string(1) "d"
array(3) {
["d"]=>
string(5) "drink"
["p"]=>
string(4) "port"
["s"]=>
string(3) "set"
}
-- Iteration 8 --
string(3) "One"
int(1)
string(3) "two"
string(3) "two"
int(2)
string(5) "three"
string(5) "three"
int(3)
bool(false)
bool(false)
NULL
bool(false)
string(3) "One"
int(1)
array(3) {
[1]=>
string(3) "One"
[2]=>
string(3) "two"
[3]=>
string(5) "three"
}
*** Testing possible variations ***
-- Iteration 1 --
bool(false)
NULL
bool(false)
bool(false)
NULL
array(0) {
}
-- Iteration 2 --
string(0) ""
int(0)
bool(false)
bool(false)
NULL
bool(false)
string(0) ""
int(0)
array(1) {
[0]=>
string(0) ""
}
-- Iteration 3 --
NULL
int(0)
bool(false)
bool(false)
NULL
bool(false)
NULL
int(0)
array(1) {
[0]=>
NULL
}
-- Iteration 4 --
NULL
int(0)
bool(false)
bool(false)
NULL
bool(false)
NULL
int(0)
array(1) {
[0]=>
NULL
}
-- Iteration 5 --
NULL
int(0)
bool(true)
bool(true)
int(1)
NULL
NULL
int(2)
string(0) ""
string(0) ""
int(3)
int(1)
int(1)
int(4)
bool(false)
bool(false)
NULL
bool(false)
NULL
int(0)
array(5) {
[0]=>
NULL
[1]=>
bool(true)
[2]=>
NULL
[3]=>
string(0) ""
[4]=>
int(1)
}
-- Iteration 6 --
string(4) "test"
int(-1)
string(4) "rest"
string(4) "rest"
int(-2)
string(3) "two"
string(3) "two"
int(2)
string(0) ""
string(0) ""
string(0) ""
string(4) "zero"
string(4) "zero"
int(0)
bool(false)
bool(false)
NULL
bool(false)
string(4) "test"
int(-1)
array(5) {
[-1]=>
string(4) "test"
[-2]=>
string(4) "rest"
[2]=>
string(3) "two"
[""]=>
string(0) ""
[0]=>
string(4) "zero"
}
-- Testing variation: when array is unset --
HipHop Warning: %a
NULL
HipHop Warning: %a
NULL
HipHop Warning: %a
NULL
HipHop Warning: %a
NULL
*** Testing error conditions ***
HipHop Warning: %a
NULL
HipHop Warning: %a
NULL
HipHop Warning: %a
NULL
HipHop Warning: %a
NULL
HipHop Warning: %a
NULL
HipHop Warning: %a
NULL
HipHop Warning: %a
NULL
HipHop Warning: %a
NULL
HipHop Warning: %a
NULL
HipHop Warning: %a
NULL
HipHop Warning: %a
NULL
HipHop Warning: %a
NULL
HipHop Warning: %a
NULL
HipHop Warning: %a
NULL
HipHop Warning: %a
NULL
HipHop Warning: %a
NULL
HipHop Warning: %a
NULL
HipHop Warning: %a
NULL
HipHop Warning: %a
NULL
HipHop Warning: %a
NULL
Done
@@ -0,0 +1,12 @@
<?php
/* generate different failure conditions */
$int_var = -19;
$item = array ("one" => 1, "two" => 2, "THREE" => 3, "FOUR" => "four");
var_dump( array_change_key_case($int_var) ); // args less than expected
var_dump( array_change_key_case($int_var, CASE_UPPER) ); // invalid first argument
var_dump( array_change_key_case() ); // Zero argument
var_dump( array_change_key_case($item, $item["one"], "CASE_UPPER") ); // more than expected numbers
echo "end\n";
?>
@@ -0,0 +1,9 @@
HipHop Warning: %a
NULL
HipHop Warning: %a
NULL
HipHop Warning: %a
NULL
HipHop Warning: %a
NULL
end
@@ -0,0 +1,19 @@
<?php
$item = array ("one" => 1, "two" => 2, "THREE" => 3, "FOUR" => "four");
/* use 'case' argument other than CASE_LOWER & CASE_UPPER */
var_dump(array_change_key_case($item, "CASE_UPPER"));
var_dump(array_change_key_case($item, 5));
/* when keys are different in terms of only case */
/* should return one value key pair with key being in lowercase */
var_dump( array_change_key_case( array("ONE" => 1, "one" => 3, "One" => 4) ) );
var_dump( array_change_key_case( array("ONE" => 1, "one" => 6, "One" => 5), "CASE_UPPER" ) );
/* should return one value key pair with key being in uppercase */
var_dump( array_change_key_case( array("ONE" => 1, "one" => 2, "One" => 3), CASE_UPPER ) );
var_dump( array_change_key_case( array("ONE" => 1, "one" => 1, "One" => 2), 5 ) );
echo "end\n";
?>
@@ -0,0 +1,27 @@
HipHop Warning: %a
NULL
array(4) {
["ONE"]=>
int(1)
["TWO"]=>
int(2)
["THREE"]=>
int(3)
["FOUR"]=>
string(4) "four"
}
array(1) {
["one"]=>
int(4)
}
HipHop Warning: %a
NULL
array(1) {
["ONE"]=>
int(3)
}
array(1) {
["ONE"]=>
int(2)
}
end
@@ -0,0 +1,93 @@
<?php
/* Prototype : array array_change_key_case(array $input [, int $case])
* Description: Retuns an array with all string keys lowercased [or uppercased]
* Source code: ext/standard/array.c
*/
/*
* Pass different data types as $input argument to test behaviour of array_change_key_case()
*/
echo "*** Testing array_change_key_case() : usage variations ***\n";
//get an unset variable
$unset_var = 10;
unset ($unset_var);
// get a class
class classA
{
public function __toString() {
return "Class A object";
}
}
// heredoc string
$heredoc = <<<EOT
hello world
EOT;
// get a resource variable
$fp = fopen(__FILE__, "r");
// unexpected values to be passed to $input argument
$inputs = array(
// int data
/*1*/ 0,
1,
12345,
-2345,
// float data
/*5*/ 10.5,
-10.5,
12.3456789000e10,
12.3456789000E-10,
.5,
// null data
/*10*/ NULL,
null,
// boolean data
/*12*/ true,
false,
TRUE,
FALSE,
// empty data
/*16*/ "",
'',
array(),
// string data
/*19*/ "string",
'string',
$heredoc,
// object data
/*22*/ new classA(),
// undefined data
/*23*/ @$undefined_var,
// unset data
/*24*/ @$unset_var,
// resource variable
/*25*/ $fp
);
// loop through each element of $inputs to check the behavior of array_change_key_case()
$iterator = 1;
foreach($inputs as $input) {
echo "\n-- Iteration $iterator --\n";
var_dump( array_change_key_case($input) );
$iterator++;
};
fclose($fp);
echo "Done";
?>
@@ -0,0 +1,102 @@
*** Testing array_change_key_case() : usage variations ***
-- Iteration 1 --
HipHop Warning: %a
NULL
-- Iteration 2 --
HipHop Warning: %a
NULL
-- Iteration 3 --
HipHop Warning: %a
NULL
-- Iteration 4 --
HipHop Warning: %a
NULL
-- Iteration 5 --
HipHop Warning: %a
NULL
-- Iteration 6 --
HipHop Warning: %a
NULL
-- Iteration 7 --
HipHop Warning: %a
NULL
-- Iteration 8 --
HipHop Warning: %a
NULL
-- Iteration 9 --
HipHop Warning: %a
NULL
-- Iteration 10 --
HipHop Warning: %a
NULL
-- Iteration 11 --
HipHop Warning: %a
NULL
-- Iteration 12 --
HipHop Warning: %a
NULL
-- Iteration 13 --
HipHop Warning: %a
NULL
-- Iteration 14 --
HipHop Warning: %a
NULL
-- Iteration 15 --
HipHop Warning: %a
NULL
-- Iteration 16 --
HipHop Warning: %a
NULL
-- Iteration 17 --
HipHop Warning: %a
NULL
-- Iteration 18 --
array(0) {
}
-- Iteration 19 --
HipHop Warning: %a
NULL
-- Iteration 20 --
HipHop Warning: %a
NULL
-- Iteration 21 --
HipHop Warning: %a
NULL
-- Iteration 22 --
HipHop Warning: %a
NULL
-- Iteration 23 --
HipHop Warning: %a
NULL
-- Iteration 24 --
HipHop Warning: %a
NULL
-- Iteration 25 --
HipHop Warning: %a
NULL
Done
@@ -0,0 +1,81 @@
<?php
/* Prototype : array array_change_key_case(array $input [, int $case])
* Description: Retuns an array with all string keys lowercased [or uppercased]
* Source code: ext/standard/array.c
*/
/*
* Pass different data types as $case argument to array_change_key_case() to test behaviour
* Where possible, CASE_UPPER has been entered as a string value
*/
echo "*** Testing array_change_key_case() : usage variations ***\n";
// Initialise function arguments not being substituted
$array = array ('one' => 1, 'TWO' => 2, 'Three' => 3);
//get an unset variable
$unset_var = 10;
unset ($unset_var);
// heredoc string
$heredoc = <<<EOT
CASE_UPPER
EOT;
// get a resource variable
$fp = fopen(__FILE__, "r");
// unexpected values to be passed to $case argument
$inputs = array(
// int data
/*1*/ 0,
1,
12345,
-2345,
// float data
/*5*/ 10.5,
-10.5,
12.3456789000e10,
12.3456789000E-10,
.5,
// null data
/*10*/ NULL,
null,
// boolean data
/*12*/ true,
false,
TRUE,
FALSE,
// empty data
/*16*/ "",
'',
array(),
// string data
/*19*/ "CASE_UPPER",
'CASE_UPPER',
$heredoc,
// undefined data
/*22*/ @$undefined_var,
// unset data
/*23*/ @$unset_var,
);
// loop through each element of $inputs to check the behavior of array_change_key_case()
$iterator = 1;
foreach($inputs as $input) {
echo "\n-- Iteration $iterator --\n";
var_dump( array_change_key_case($array, $input) );
$iterator++;
};
echo "Done";
?>
@@ -0,0 +1,196 @@
*** Testing array_change_key_case() : usage variations ***
-- Iteration 1 --
array(3) {
["one"]=>
int(1)
["two"]=>
int(2)
["three"]=>
int(3)
}
-- Iteration 2 --
array(3) {
["ONE"]=>
int(1)
["TWO"]=>
int(2)
["THREE"]=>
int(3)
}
-- Iteration 3 --
array(3) {
["ONE"]=>
int(1)
["TWO"]=>
int(2)
["THREE"]=>
int(3)
}
-- Iteration 4 --
array(3) {
["ONE"]=>
int(1)
["TWO"]=>
int(2)
["THREE"]=>
int(3)
}
-- Iteration 5 --
array(3) {
["ONE"]=>
int(1)
["TWO"]=>
int(2)
["THREE"]=>
int(3)
}
-- Iteration 6 --
array(3) {
["ONE"]=>
int(1)
["TWO"]=>
int(2)
["THREE"]=>
int(3)
}
-- Iteration 7 --
array(3) {
["ONE"]=>
int(1)
["TWO"]=>
int(2)
["THREE"]=>
int(3)
}
-- Iteration 8 --
array(3) {
["one"]=>
int(1)
["two"]=>
int(2)
["three"]=>
int(3)
}
-- Iteration 9 --
array(3) {
["one"]=>
int(1)
["two"]=>
int(2)
["three"]=>
int(3)
}
-- Iteration 10 --
array(3) {
["one"]=>
int(1)
["two"]=>
int(2)
["three"]=>
int(3)
}
-- Iteration 11 --
array(3) {
["one"]=>
int(1)
["two"]=>
int(2)
["three"]=>
int(3)
}
-- Iteration 12 --
array(3) {
["ONE"]=>
int(1)
["TWO"]=>
int(2)
["THREE"]=>
int(3)
}
-- Iteration 13 --
array(3) {
["one"]=>
int(1)
["two"]=>
int(2)
["three"]=>
int(3)
}
-- Iteration 14 --
array(3) {
["ONE"]=>
int(1)
["TWO"]=>
int(2)
["THREE"]=>
int(3)
}
-- Iteration 15 --
array(3) {
["one"]=>
int(1)
["two"]=>
int(2)
["three"]=>
int(3)
}
-- Iteration 16 --
HipHop Warning: %a
NULL
-- Iteration 17 --
HipHop Warning: %a
NULL
-- Iteration 18 --
HipHop Warning: %a
NULL
-- Iteration 19 --
HipHop Warning: %a
NULL
-- Iteration 20 --
HipHop Warning: %a
NULL
-- Iteration 21 --
HipHop Warning: %a
NULL
-- Iteration 22 --
array(3) {
["one"]=>
int(1)
["two"]=>
int(2)
["three"]=>
int(3)
}
-- Iteration 23 --
array(3) {
["one"]=>
int(1)
["two"]=>
int(2)
["three"]=>
int(3)
}
Done
@@ -0,0 +1,29 @@
<?php
/* Prototype : array array_change_key_case(array $input [, int $case])
* Description: Retuns an array with all string keys lowercased [or uppercased]
* Source code: ext/standard/array.c
*/
/*
* Test how array_change_key_case() behaves with different strings
*/
echo "*** Testing array_change_key_case() : usage variations ***\n";
$inputs = array (
// group of escape sequences
array(null => 1, NULL => 2, "\a" => 3, "\cx" => 4, "\e" => 5, "\f" => 6, "\n" => 7, "\t" => 8, "\xhh" => 9, "\ddd" => 10, "\v" => 11),
// array contains combination of capital/small letters
array("lemoN" => 1, "Orange" => 2, "banana" => 3, "apple" => 4, "Test" => 5, "TTTT" => 6, "ttt" => 7, "ww" => 8, "x" => 9, "X" => 10, "oraNGe" => 11, "BANANA" => 12)
);
foreach($inputs as $input) {
echo "\n-- \$case = default --\n";
var_dump(array_change_key_case($input));
echo "-- \$case = upper --\n";
var_dump(array_change_key_case($input, CASE_UPPER));
}
echo "Done";
?>
@@ -0,0 +1,94 @@
*** Testing array_change_key_case() : usage variations ***
-- $case = default --
array(10) {
[""]=>
int(2)
["\a"]=>
int(3)
["\cx"]=>
int(4)
[""]=>
int(5)
[" "]=>
int(6)
["
"]=>
int(7)
[" "]=>
int(8)
["\xhh"]=>
int(9)
["\ddd"]=>
int(10)
[" "]=>
int(11)
}
-- $case = upper --
array(10) {
[""]=>
int(2)
["\A"]=>
int(3)
["\CX"]=>
int(4)
[""]=>
int(5)
[" "]=>
int(6)
["
"]=>
int(7)
[" "]=>
int(8)
["\XHH"]=>
int(9)
["\DDD"]=>
int(10)
[" "]=>
int(11)
}
-- $case = default --
array(9) {
["lemon"]=>
int(1)
["orange"]=>
int(11)
["banana"]=>
int(12)
["apple"]=>
int(4)
["test"]=>
int(5)
["tttt"]=>
int(6)
["ttt"]=>
int(7)
["ww"]=>
int(8)
["x"]=>
int(10)
}
-- $case = upper --
array(9) {
["LEMON"]=>
int(1)
["ORANGE"]=>
int(11)
["BANANA"]=>
int(12)
["APPLE"]=>
int(4)
["TEST"]=>
int(5)
["TTTT"]=>
int(6)
["TTT"]=>
int(7)
["WW"]=>
int(8)
["X"]=>
int(10)
}
Done
@@ -0,0 +1,11 @@
<?php
$array = array ();
var_dump ($array);
for ($i = 0; $i < (sizeof($array) + 1); $i++) {
echo "[$i]\n";
var_dump (@array_chunk ($array, $i));
var_dump (@array_chunk ($array, $i, TRUE));
var_dump (@array_chunk ($array, $i, FALSE));
echo "\n";
}
?>
@@ -0,0 +1,6 @@
array(0) {
}
[0]
NULL
NULL
NULL
@@ -0,0 +1,11 @@
<?php
$array = array (1 => 1, 2 => 2, 3 => 3);
var_dump ($array);
for ($i = 0; $i < (sizeof($array) + 1); $i++) {
echo "[$i]\n";
var_dump (@array_chunk ($array, $i));
var_dump (@array_chunk ($array, $i, TRUE));
var_dump (@array_chunk ($array, $i, FALSE));
echo "\n";
}
?>
@@ -0,0 +1,144 @@
array(3) {
[1]=>
int(1)
[2]=>
int(2)
[3]=>
int(3)
}
[0]
NULL
NULL
NULL
[1]
array(3) {
[0]=>
array(1) {
[0]=>
int(1)
}
[1]=>
array(1) {
[0]=>
int(2)
}
[2]=>
array(1) {
[0]=>
int(3)
}
}
array(3) {
[0]=>
array(1) {
[1]=>
int(1)
}
[1]=>
array(1) {
[2]=>
int(2)
}
[2]=>
array(1) {
[3]=>
int(3)
}
}
array(3) {
[0]=>
array(1) {
[0]=>
int(1)
}
[1]=>
array(1) {
[0]=>
int(2)
}
[2]=>
array(1) {
[0]=>
int(3)
}
}
[2]
array(2) {
[0]=>
array(2) {
[0]=>
int(1)
[1]=>
int(2)
}
[1]=>
array(1) {
[0]=>
int(3)
}
}
array(2) {
[0]=>
array(2) {
[1]=>
int(1)
[2]=>
int(2)
}
[1]=>
array(1) {
[3]=>
int(3)
}
}
array(2) {
[0]=>
array(2) {
[0]=>
int(1)
[1]=>
int(2)
}
[1]=>
array(1) {
[0]=>
int(3)
}
}
[3]
array(1) {
[0]=>
array(3) {
[0]=>
int(1)
[1]=>
int(2)
[2]=>
int(3)
}
}
array(1) {
[0]=>
array(3) {
[1]=>
int(1)
[2]=>
int(2)
[3]=>
int(3)
}
}
array(1) {
[0]=>
array(3) {
[0]=>
int(1)
[1]=>
int(2)
[2]=>
int(3)
}
}
@@ -0,0 +1,12 @@
<?php
$array = array (0 => 0, 3 => 2);
var_dump ($array);
for ($i = 0; $i < (sizeof($array) + 1); $i++) {
echo "[$i]\n";
var_dump (@array_chunk ($array, $i));
var_dump (@array_chunk ($array, $i, TRUE));
var_dump (@array_chunk ($array, $i, FALSE));
echo "\n";
}
?>
@@ -0,0 +1,77 @@
array(2) {
[0]=>
int(0)
[3]=>
int(2)
}
[0]
NULL
NULL
NULL
[1]
array(2) {
[0]=>
array(1) {
[0]=>
int(0)
}
[1]=>
array(1) {
[0]=>
int(2)
}
}
array(2) {
[0]=>
array(1) {
[0]=>
int(0)
}
[1]=>
array(1) {
[3]=>
int(2)
}
}
array(2) {
[0]=>
array(1) {
[0]=>
int(0)
}
[1]=>
array(1) {
[0]=>
int(2)
}
}
[2]
array(1) {
[0]=>
array(2) {
[0]=>
int(0)
[1]=>
int(2)
}
}
array(1) {
[0]=>
array(2) {
[0]=>
int(0)
[3]=>
int(2)
}
}
array(1) {
[0]=>
array(2) {
[0]=>
int(0)
[1]=>
int(2)
}
}
@@ -0,0 +1,11 @@
<?php
$array = array (1 => 1, 5 => 2, 8 => 3);
var_dump ($array);
for ($i = 0; $i < (sizeof($array) + 1); $i++) {
echo "[$i]\n";
var_dump (@array_chunk ($array, $i));
var_dump (@array_chunk ($array, $i, TRUE));
var_dump (@array_chunk ($array, $i, FALSE));
echo "\n";
}
?>
@@ -0,0 +1,144 @@
array(3) {
[1]=>
int(1)
[5]=>
int(2)
[8]=>
int(3)
}
[0]
NULL
NULL
NULL
[1]
array(3) {
[0]=>
array(1) {
[0]=>
int(1)
}
[1]=>
array(1) {
[0]=>
int(2)
}
[2]=>
array(1) {
[0]=>
int(3)
}
}
array(3) {
[0]=>
array(1) {
[1]=>
int(1)
}
[1]=>
array(1) {
[5]=>
int(2)
}
[2]=>
array(1) {
[8]=>
int(3)
}
}
array(3) {
[0]=>
array(1) {
[0]=>
int(1)
}
[1]=>
array(1) {
[0]=>
int(2)
}
[2]=>
array(1) {
[0]=>
int(3)
}
}
[2]
array(2) {
[0]=>
array(2) {
[0]=>
int(1)
[1]=>
int(2)
}
[1]=>
array(1) {
[0]=>
int(3)
}
}
array(2) {
[0]=>
array(2) {
[1]=>
int(1)
[5]=>
int(2)
}
[1]=>
array(1) {
[8]=>
int(3)
}
}
array(2) {
[0]=>
array(2) {
[0]=>
int(1)
[1]=>
int(2)
}
[1]=>
array(1) {
[0]=>
int(3)
}
}
[3]
array(1) {
[0]=>
array(3) {
[0]=>
int(1)
[1]=>
int(2)
[2]=>
int(3)
}
}
array(1) {
[0]=>
array(3) {
[1]=>
int(1)
[5]=>
int(2)
[8]=>
int(3)
}
}
array(1) {
[0]=>
array(3) {
[0]=>
int(1)
[1]=>
int(2)
[2]=>
int(3)
}
}
@@ -0,0 +1,11 @@
<?php
$array = array (1, 2);
var_dump ($array);
for ($i = 0; $i < (sizeof($array) + 1); $i++) {
echo "[$i]\n";
var_dump (@array_chunk ($array, $i));
var_dump (@array_chunk ($array, $i, TRUE));
var_dump (@array_chunk ($array, $i, FALSE));
echo "\n";
}
?>
@@ -0,0 +1,77 @@
array(2) {
[0]=>
int(1)
[1]=>
int(2)
}
[0]
NULL
NULL
NULL
[1]
array(2) {
[0]=>
array(1) {
[0]=>
int(1)
}
[1]=>
array(1) {
[0]=>
int(2)
}
}
array(2) {
[0]=>
array(1) {
[0]=>
int(1)
}
[1]=>
array(1) {
[1]=>
int(2)
}
}
array(2) {
[0]=>
array(1) {
[0]=>
int(1)
}
[1]=>
array(1) {
[0]=>
int(2)
}
}
[2]
array(1) {
[0]=>
array(2) {
[0]=>
int(1)
[1]=>
int(2)
}
}
array(1) {
[0]=>
array(2) {
[0]=>
int(1)
[1]=>
int(2)
}
}
array(1) {
[0]=>
array(2) {
[0]=>
int(1)
[1]=>
int(2)
}
}
@@ -0,0 +1,11 @@
<?php
$array = array (0, 1, 2);
var_dump ($array);
for ($i = 0; $i < (sizeof($array) + 1); $i++) {
echo "[$i]\n";
var_dump (@array_chunk ($array, $i));
var_dump (@array_chunk ($array, $i, TRUE));
var_dump (@array_chunk ($array, $i, FALSE));
echo "\n";
}
?>
@@ -0,0 +1,144 @@
array(3) {
[0]=>
int(0)
[1]=>
int(1)
[2]=>
int(2)
}
[0]
NULL
NULL
NULL
[1]
array(3) {
[0]=>
array(1) {
[0]=>
int(0)
}
[1]=>
array(1) {
[0]=>
int(1)
}
[2]=>
array(1) {
[0]=>
int(2)
}
}
array(3) {
[0]=>
array(1) {
[0]=>
int(0)
}
[1]=>
array(1) {
[1]=>
int(1)
}
[2]=>
array(1) {
[2]=>
int(2)
}
}
array(3) {
[0]=>
array(1) {
[0]=>
int(0)
}
[1]=>
array(1) {
[0]=>
int(1)
}
[2]=>
array(1) {
[0]=>
int(2)
}
}
[2]
array(2) {
[0]=>
array(2) {
[0]=>
int(0)
[1]=>
int(1)
}
[1]=>
array(1) {
[0]=>
int(2)
}
}
array(2) {
[0]=>
array(2) {
[0]=>
int(0)
[1]=>
int(1)
}
[1]=>
array(1) {
[2]=>
int(2)
}
}
array(2) {
[0]=>
array(2) {
[0]=>
int(0)
[1]=>
int(1)
}
[1]=>
array(1) {
[0]=>
int(2)
}
}
[3]
array(1) {
[0]=>
array(3) {
[0]=>
int(0)
[1]=>
int(1)
[2]=>
int(2)
}
}
array(1) {
[0]=>
array(3) {
[0]=>
int(0)
[1]=>
int(1)
[2]=>
int(2)
}
}
array(1) {
[0]=>
array(3) {
[0]=>
int(0)
[1]=>
int(1)
[2]=>
int(2)
}
}
@@ -0,0 +1,11 @@
<?php
$array = array (1, 2, 3);
var_dump ($array);
for ($i = 0; $i < (sizeof($array) + 1); $i++) {
echo "[$i]\n";
var_dump (@array_chunk ($array, $i));
var_dump (@array_chunk ($array, $i, TRUE));
var_dump (@array_chunk ($array, $i, FALSE));
echo "\n";
}
?>
@@ -0,0 +1,144 @@
array(3) {
[0]=>
int(1)
[1]=>
int(2)
[2]=>
int(3)
}
[0]
NULL
NULL
NULL
[1]
array(3) {
[0]=>
array(1) {
[0]=>
int(1)
}
[1]=>
array(1) {
[0]=>
int(2)
}
[2]=>
array(1) {
[0]=>
int(3)
}
}
array(3) {
[0]=>
array(1) {
[0]=>
int(1)
}
[1]=>
array(1) {
[1]=>
int(2)
}
[2]=>
array(1) {
[2]=>
int(3)
}
}
array(3) {
[0]=>
array(1) {
[0]=>
int(1)
}
[1]=>
array(1) {
[0]=>
int(2)
}
[2]=>
array(1) {
[0]=>
int(3)
}
}
[2]
array(2) {
[0]=>
array(2) {
[0]=>
int(1)
[1]=>
int(2)
}
[1]=>
array(1) {
[0]=>
int(3)
}
}
array(2) {
[0]=>
array(2) {
[0]=>
int(1)
[1]=>
int(2)
}
[1]=>
array(1) {
[2]=>
int(3)
}
}
array(2) {
[0]=>
array(2) {
[0]=>
int(1)
[1]=>
int(2)
}
[1]=>
array(1) {
[0]=>
int(3)
}
}
[3]
array(1) {
[0]=>
array(3) {
[0]=>
int(1)
[1]=>
int(2)
[2]=>
int(3)
}
}
array(1) {
[0]=>
array(3) {
[0]=>
int(1)
[1]=>
int(2)
[2]=>
int(3)
}
}
array(1) {
[0]=>
array(3) {
[0]=>
int(1)
[1]=>
int(2)
[2]=>
int(3)
}
}
@@ -0,0 +1,11 @@
<?php
$array = array (0, 1, 2, 3);
var_dump ($array);
for ($i = 0; $i < (sizeof($array) + 1); $i++) {
echo "[$i]\n";
var_dump (@array_chunk ($array, $i));
var_dump (@array_chunk ($array, $i, TRUE));
var_dump (@array_chunk ($array, $i, FALSE));
echo "\n";
}
?>
@@ -0,0 +1,223 @@
array(4) {
[0]=>
int(0)
[1]=>
int(1)
[2]=>
int(2)
[3]=>
int(3)
}
[0]
NULL
NULL
NULL
[1]
array(4) {
[0]=>
array(1) {
[0]=>
int(0)
}
[1]=>
array(1) {
[0]=>
int(1)
}
[2]=>
array(1) {
[0]=>
int(2)
}
[3]=>
array(1) {
[0]=>
int(3)
}
}
array(4) {
[0]=>
array(1) {
[0]=>
int(0)
}
[1]=>
array(1) {
[1]=>
int(1)
}
[2]=>
array(1) {
[2]=>
int(2)
}
[3]=>
array(1) {
[3]=>
int(3)
}
}
array(4) {
[0]=>
array(1) {
[0]=>
int(0)
}
[1]=>
array(1) {
[0]=>
int(1)
}
[2]=>
array(1) {
[0]=>
int(2)
}
[3]=>
array(1) {
[0]=>
int(3)
}
}
[2]
array(2) {
[0]=>
array(2) {
[0]=>
int(0)
[1]=>
int(1)
}
[1]=>
array(2) {
[0]=>
int(2)
[1]=>
int(3)
}
}
array(2) {
[0]=>
array(2) {
[0]=>
int(0)
[1]=>
int(1)
}
[1]=>
array(2) {
[2]=>
int(2)
[3]=>
int(3)
}
}
array(2) {
[0]=>
array(2) {
[0]=>
int(0)
[1]=>
int(1)
}
[1]=>
array(2) {
[0]=>
int(2)
[1]=>
int(3)
}
}
[3]
array(2) {
[0]=>
array(3) {
[0]=>
int(0)
[1]=>
int(1)
[2]=>
int(2)
}
[1]=>
array(1) {
[0]=>
int(3)
}
}
array(2) {
[0]=>
array(3) {
[0]=>
int(0)
[1]=>
int(1)
[2]=>
int(2)
}
[1]=>
array(1) {
[3]=>
int(3)
}
}
array(2) {
[0]=>
array(3) {
[0]=>
int(0)
[1]=>
int(1)
[2]=>
int(2)
}
[1]=>
array(1) {
[0]=>
int(3)
}
}
[4]
array(1) {
[0]=>
array(4) {
[0]=>
int(0)
[1]=>
int(1)
[2]=>
int(2)
[3]=>
int(3)
}
}
array(1) {
[0]=>
array(4) {
[0]=>
int(0)
[1]=>
int(1)
[2]=>
int(2)
[3]=>
int(3)
}
}
array(1) {
[0]=>
array(4) {
[0]=>
int(0)
[1]=>
int(1)
[2]=>
int(2)
[3]=>
int(3)
}
}
@@ -0,0 +1,11 @@
<?php
$array = array (1, 2, 3, 4);
var_dump ($array);
for ($i = 0; $i < (sizeof($array) + 1); $i++) {
echo "[$i]\n";
var_dump (@array_chunk ($array, $i));
var_dump (@array_chunk ($array, $i, TRUE));
var_dump (@array_chunk ($array, $i, FALSE));
echo "\n";
}
?>
@@ -0,0 +1,223 @@
array(4) {
[0]=>
int(1)
[1]=>
int(2)
[2]=>
int(3)
[3]=>
int(4)
}
[0]
NULL
NULL
NULL
[1]
array(4) {
[0]=>
array(1) {
[0]=>
int(1)
}
[1]=>
array(1) {
[0]=>
int(2)
}
[2]=>
array(1) {
[0]=>
int(3)
}
[3]=>
array(1) {
[0]=>
int(4)
}
}
array(4) {
[0]=>
array(1) {
[0]=>
int(1)
}
[1]=>
array(1) {
[1]=>
int(2)
}
[2]=>
array(1) {
[2]=>
int(3)
}
[3]=>
array(1) {
[3]=>
int(4)
}
}
array(4) {
[0]=>
array(1) {
[0]=>
int(1)
}
[1]=>
array(1) {
[0]=>
int(2)
}
[2]=>
array(1) {
[0]=>
int(3)
}
[3]=>
array(1) {
[0]=>
int(4)
}
}
[2]
array(2) {
[0]=>
array(2) {
[0]=>
int(1)
[1]=>
int(2)
}
[1]=>
array(2) {
[0]=>
int(3)
[1]=>
int(4)
}
}
array(2) {
[0]=>
array(2) {
[0]=>
int(1)
[1]=>
int(2)
}
[1]=>
array(2) {
[2]=>
int(3)
[3]=>
int(4)
}
}
array(2) {
[0]=>
array(2) {
[0]=>
int(1)
[1]=>
int(2)
}
[1]=>
array(2) {
[0]=>
int(3)
[1]=>
int(4)
}
}
[3]
array(2) {
[0]=>
array(3) {
[0]=>
int(1)
[1]=>
int(2)
[2]=>
int(3)
}
[1]=>
array(1) {
[0]=>
int(4)
}
}
array(2) {
[0]=>
array(3) {
[0]=>
int(1)
[1]=>
int(2)
[2]=>
int(3)
}
[1]=>
array(1) {
[3]=>
int(4)
}
}
array(2) {
[0]=>
array(3) {
[0]=>
int(1)
[1]=>
int(2)
[2]=>
int(3)
}
[1]=>
array(1) {
[0]=>
int(4)
}
}
[4]
array(1) {
[0]=>
array(4) {
[0]=>
int(1)
[1]=>
int(2)
[2]=>
int(3)
[3]=>
int(4)
}
}
array(1) {
[0]=>
array(4) {
[0]=>
int(1)
[1]=>
int(2)
[2]=>
int(3)
[3]=>
int(4)
}
}
array(1) {
[0]=>
array(4) {
[0]=>
int(1)
[1]=>
int(2)
[2]=>
int(3)
[3]=>
int(4)
}
}
@@ -0,0 +1,11 @@
<?php
$array = array (0, 1, 2, 3, 4);
var_dump ($array);
for ($i = 0; $i < (sizeof($array) + 1); $i++) {
echo "[$i]\n";
var_dump (@array_chunk ($array, $i));
var_dump (@array_chunk ($array, $i, TRUE));
var_dump (@array_chunk ($array, $i, FALSE));
echo "\n";
}
?>
@@ -0,0 +1,323 @@
array(5) {
[0]=>
int(0)
[1]=>
int(1)
[2]=>
int(2)
[3]=>
int(3)
[4]=>
int(4)
}
[0]
NULL
NULL
NULL
[1]
array(5) {
[0]=>
array(1) {
[0]=>
int(0)
}
[1]=>
array(1) {
[0]=>
int(1)
}
[2]=>
array(1) {
[0]=>
int(2)
}
[3]=>
array(1) {
[0]=>
int(3)
}
[4]=>
array(1) {
[0]=>
int(4)
}
}
array(5) {
[0]=>
array(1) {
[0]=>
int(0)
}
[1]=>
array(1) {
[1]=>
int(1)
}
[2]=>
array(1) {
[2]=>
int(2)
}
[3]=>
array(1) {
[3]=>
int(3)
}
[4]=>
array(1) {
[4]=>
int(4)
}
}
array(5) {
[0]=>
array(1) {
[0]=>
int(0)
}
[1]=>
array(1) {
[0]=>
int(1)
}
[2]=>
array(1) {
[0]=>
int(2)
}
[3]=>
array(1) {
[0]=>
int(3)
}
[4]=>
array(1) {
[0]=>
int(4)
}
}
[2]
array(3) {
[0]=>
array(2) {
[0]=>
int(0)
[1]=>
int(1)
}
[1]=>
array(2) {
[0]=>
int(2)
[1]=>
int(3)
}
[2]=>
array(1) {
[0]=>
int(4)
}
}
array(3) {
[0]=>
array(2) {
[0]=>
int(0)
[1]=>
int(1)
}
[1]=>
array(2) {
[2]=>
int(2)
[3]=>
int(3)
}
[2]=>
array(1) {
[4]=>
int(4)
}
}
array(3) {
[0]=>
array(2) {
[0]=>
int(0)
[1]=>
int(1)
}
[1]=>
array(2) {
[0]=>
int(2)
[1]=>
int(3)
}
[2]=>
array(1) {
[0]=>
int(4)
}
}
[3]
array(2) {
[0]=>
array(3) {
[0]=>
int(0)
[1]=>
int(1)
[2]=>
int(2)
}
[1]=>
array(2) {
[0]=>
int(3)
[1]=>
int(4)
}
}
array(2) {
[0]=>
array(3) {
[0]=>
int(0)
[1]=>
int(1)
[2]=>
int(2)
}
[1]=>
array(2) {
[3]=>
int(3)
[4]=>
int(4)
}
}
array(2) {
[0]=>
array(3) {
[0]=>
int(0)
[1]=>
int(1)
[2]=>
int(2)
}
[1]=>
array(2) {
[0]=>
int(3)
[1]=>
int(4)
}
}
[4]
array(2) {
[0]=>
array(4) {
[0]=>
int(0)
[1]=>
int(1)
[2]=>
int(2)
[3]=>
int(3)
}
[1]=>
array(1) {
[0]=>
int(4)
}
}
array(2) {
[0]=>
array(4) {
[0]=>
int(0)
[1]=>
int(1)
[2]=>
int(2)
[3]=>
int(3)
}
[1]=>
array(1) {
[4]=>
int(4)
}
}
array(2) {
[0]=>
array(4) {
[0]=>
int(0)
[1]=>
int(1)
[2]=>
int(2)
[3]=>
int(3)
}
[1]=>
array(1) {
[0]=>
int(4)
}
}
[5]
array(1) {
[0]=>
array(5) {
[0]=>
int(0)
[1]=>
int(1)
[2]=>
int(2)
[3]=>
int(3)
[4]=>
int(4)
}
}
array(1) {
[0]=>
array(5) {
[0]=>
int(0)
[1]=>
int(1)
[2]=>
int(2)
[3]=>
int(3)
[4]=>
int(4)
}
}
array(1) {
[0]=>
array(5) {
[0]=>
int(0)
[1]=>
int(1)
[2]=>
int(2)
[3]=>
int(3)
[4]=>
int(4)
}
}
@@ -0,0 +1,11 @@
<?php
$array = array (1, 2, 3, 4, 5, 6, 7, 8, 9, 10);
var_dump ($array);
for ($i = 0; $i < (sizeof($array) + 1); $i++) {
echo "[$i]\n";
var_dump (@array_chunk ($array, $i));
var_dump (@array_chunk ($array, $i, TRUE));
var_dump (@array_chunk ($array, $i, FALSE));
echo "\n";
}
?>
Diferenças do arquivo suprimidas por serem muito extensas Carregar Diff
@@ -0,0 +1,78 @@
<?php
/* Prototype : array array_chunk(array $array, int $size [, bool $preserve_keys])
* Description: Split array into chunks
: Chunks an array into size large chunks
* Source code: ext/standard/array.c
*/
/*
* Testing array_chunk() function with unexpected values for 'size' argument
*/
echo "*** Testing array_chunk() : usage variations ***\n";
// input array
$input = array(1, 2);
//get an unset variable
$unset_var = 10;
unset ($unset_var);
//array of values to iterate over
$values = array (
// float data
/*1*/ 10.5,
-10.5,
10.5e10,
10.6E-10,
.5,
// array data
/*6*/ array(),
array(0),
array(1),
array(1, 2),
array('color' => 'red', 'item' => 'pen'),
// null data
/*11*/ NULL,
null,
// boolean data
/*13*/ true,
false,
TRUE,
FALSE,
// empty data
/*17*/ "",
'',
// string data
/*19*/ "string",
'string',
// object data
/*21*/ new stdclass(),
// undefined data
/*22*/ @undefined_var,
// unset data
/*23*/ @unset_var
);
// loop through each element of the array for size
$count = 1;
foreach($values as $value){
echo "\n-- Iteration $count --\n";
var_dump( array_chunk($input, $value) );
var_dump( array_chunk($input, $value, true) );
var_dump( array_chunk($input, $value, false) );
$count++;
}
echo "Done";
?>
@@ -0,0 +1,288 @@
*** Testing array_chunk() : usage variations ***
-- Iteration 1 --
array(1) {
[0]=>
array(2) {
[0]=>
int(1)
[1]=>
int(2)
}
}
array(1) {
[0]=>
array(2) {
[0]=>
int(1)
[1]=>
int(2)
}
}
array(1) {
[0]=>
array(2) {
[0]=>
int(1)
[1]=>
int(2)
}
}
-- Iteration 2 --
HipHop Warning: %a
NULL
HipHop Warning: %a
NULL
HipHop Warning: %a
NULL
-- Iteration 3 --
array(1) {
[0]=>
array(2) {
[0]=>
int(1)
[1]=>
int(2)
}
}
array(1) {
[0]=>
array(2) {
[0]=>
int(1)
[1]=>
int(2)
}
}
array(1) {
[0]=>
array(2) {
[0]=>
int(1)
[1]=>
int(2)
}
}
-- Iteration 4 --
HipHop Warning: %a
NULL
HipHop Warning: %a
NULL
HipHop Warning: %a
NULL
-- Iteration 5 --
HipHop Warning: %a
NULL
HipHop Warning: %a
NULL
HipHop Warning: %a
NULL
-- Iteration 6 --
HipHop Warning: %a
NULL
HipHop Warning: %a
NULL
HipHop Warning: %a
NULL
-- Iteration 7 --
HipHop Warning: %a
NULL
HipHop Warning: %a
NULL
HipHop Warning: %a
NULL
-- Iteration 8 --
HipHop Warning: %a
NULL
HipHop Warning: %a
NULL
HipHop Warning: %a
NULL
-- Iteration 9 --
HipHop Warning: %a
NULL
HipHop Warning: %a
NULL
HipHop Warning: %a
NULL
-- Iteration 10 --
HipHop Warning: %a
NULL
HipHop Warning: %a
NULL
HipHop Warning: %a
NULL
-- Iteration 11 --
HipHop Warning: %a
NULL
HipHop Warning: %a
NULL
HipHop Warning: %a
NULL
-- Iteration 12 --
HipHop Warning: %a
NULL
HipHop Warning: %a
NULL
HipHop Warning: %a
NULL
-- Iteration 13 --
array(2) {
[0]=>
array(1) {
[0]=>
int(1)
}
[1]=>
array(1) {
[0]=>
int(2)
}
}
array(2) {
[0]=>
array(1) {
[0]=>
int(1)
}
[1]=>
array(1) {
[1]=>
int(2)
}
}
array(2) {
[0]=>
array(1) {
[0]=>
int(1)
}
[1]=>
array(1) {
[0]=>
int(2)
}
}
-- Iteration 14 --
HipHop Warning: %a
NULL
HipHop Warning: %a
NULL
HipHop Warning: %a
NULL
-- Iteration 15 --
array(2) {
[0]=>
array(1) {
[0]=>
int(1)
}
[1]=>
array(1) {
[0]=>
int(2)
}
}
array(2) {
[0]=>
array(1) {
[0]=>
int(1)
}
[1]=>
array(1) {
[1]=>
int(2)
}
}
array(2) {
[0]=>
array(1) {
[0]=>
int(1)
}
[1]=>
array(1) {
[0]=>
int(2)
}
}
-- Iteration 16 --
HipHop Warning: %a
NULL
HipHop Warning: %a
NULL
HipHop Warning: %a
NULL
-- Iteration 17 --
HipHop Warning: %a
NULL
HipHop Warning: %a
NULL
HipHop Warning: %a
NULL
-- Iteration 18 --
HipHop Warning: %a
NULL
HipHop Warning: %a
NULL
HipHop Warning: %a
NULL
-- Iteration 19 --
HipHop Warning: %a
NULL
HipHop Warning: %a
NULL
HipHop Warning: %a
NULL
-- Iteration 20 --
HipHop Warning: %a
NULL
HipHop Warning: %a
NULL
HipHop Warning: %a
NULL
-- Iteration 21 --
HipHop Warning: %a
NULL
HipHop Warning: %a
NULL
HipHop Warning: %a
NULL
-- Iteration 22 --
HipHop Warning: %a
NULL
HipHop Warning: %a
NULL
HipHop Warning: %a
NULL
-- Iteration 23 --
HipHop Warning: %a
NULL
HipHop Warning: %a
NULL
HipHop Warning: %a
NULL
Done
@@ -0,0 +1,11 @@
<?php
$array = array (0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10);
var_dump ($array);
for ($i = 0; $i < (sizeof($array) + 1); $i++) {
echo "[$i]\n";
var_dump (@array_chunk ($array, $i));
var_dump (@array_chunk ($array, $i, TRUE));
var_dump (@array_chunk ($array, $i, FALSE));
echo "\n";
}
?>
Diferenças do arquivo suprimidas por serem muito extensas Carregar Diff
@@ -0,0 +1,11 @@
<?php
$array = array ("a" => 1);
var_dump ($array);
for ($i = 0; $i < (sizeof($array) + 1); $i++) {
echo "[$i]\n";
var_dump (@array_chunk ($array, $i));
var_dump (@array_chunk ($array, $i, TRUE));
var_dump (@array_chunk ($array, $i, FALSE));
echo "\n";
}
?>
@@ -0,0 +1,31 @@
array(1) {
["a"]=>
int(1)
}
[0]
NULL
NULL
NULL
[1]
array(1) {
[0]=>
array(1) {
[0]=>
int(1)
}
}
array(1) {
[0]=>
array(1) {
["a"]=>
int(1)
}
}
array(1) {
[0]=>
array(1) {
[0]=>
int(1)
}
}
@@ -0,0 +1,11 @@
<?php
$array = array ("b" => 1, "c" => 2);
var_dump ($array);
for ($i = 0; $i < (sizeof($array) + 1); $i++) {
echo "[$i]\n";
var_dump (@array_chunk ($array, $i));
var_dump (@array_chunk ($array, $i, TRUE));
var_dump (@array_chunk ($array, $i, FALSE));
echo "\n";
}
?>
@@ -0,0 +1,77 @@
array(2) {
["b"]=>
int(1)
["c"]=>
int(2)
}
[0]
NULL
NULL
NULL
[1]
array(2) {
[0]=>
array(1) {
[0]=>
int(1)
}
[1]=>
array(1) {
[0]=>
int(2)
}
}
array(2) {
[0]=>
array(1) {
["b"]=>
int(1)
}
[1]=>
array(1) {
["c"]=>
int(2)
}
}
array(2) {
[0]=>
array(1) {
[0]=>
int(1)
}
[1]=>
array(1) {
[0]=>
int(2)
}
}
[2]
array(1) {
[0]=>
array(2) {
[0]=>
int(1)
[1]=>
int(2)
}
}
array(1) {
[0]=>
array(2) {
["b"]=>
int(1)
["c"]=>
int(2)
}
}
array(1) {
[0]=>
array(2) {
[0]=>
int(1)
[1]=>
int(2)
}
}
@@ -0,0 +1,11 @@
<?php
$array = array ("p" => 1, "q" => 2, "r" => 3, "s" => 4, "u" => 5, "v" => 6);
var_dump ($array);
for ($i = 0; $i < (sizeof($array) + 1); $i++) {
echo "[$i]\n";
var_dump (@array_chunk ($array, $i));
var_dump (@array_chunk ($array, $i, TRUE));
var_dump (@array_chunk ($array, $i, FALSE));
echo "\n";
}
?>
@@ -0,0 +1,426 @@
array(6) {
["p"]=>
int(1)
["q"]=>
int(2)
["r"]=>
int(3)
["s"]=>
int(4)
["u"]=>
int(5)
["v"]=>
int(6)
}
[0]
NULL
NULL
NULL
[1]
array(6) {
[0]=>
array(1) {
[0]=>
int(1)
}
[1]=>
array(1) {
[0]=>
int(2)
}
[2]=>
array(1) {
[0]=>
int(3)
}
[3]=>
array(1) {
[0]=>
int(4)
}
[4]=>
array(1) {
[0]=>
int(5)
}
[5]=>
array(1) {
[0]=>
int(6)
}
}
array(6) {
[0]=>
array(1) {
["p"]=>
int(1)
}
[1]=>
array(1) {
["q"]=>
int(2)
}
[2]=>
array(1) {
["r"]=>
int(3)
}
[3]=>
array(1) {
["s"]=>
int(4)
}
[4]=>
array(1) {
["u"]=>
int(5)
}
[5]=>
array(1) {
["v"]=>
int(6)
}
}
array(6) {
[0]=>
array(1) {
[0]=>
int(1)
}
[1]=>
array(1) {
[0]=>
int(2)
}
[2]=>
array(1) {
[0]=>
int(3)
}
[3]=>
array(1) {
[0]=>
int(4)
}
[4]=>
array(1) {
[0]=>
int(5)
}
[5]=>
array(1) {
[0]=>
int(6)
}
}
[2]
array(3) {
[0]=>
array(2) {
[0]=>
int(1)
[1]=>
int(2)
}
[1]=>
array(2) {
[0]=>
int(3)
[1]=>
int(4)
}
[2]=>
array(2) {
[0]=>
int(5)
[1]=>
int(6)
}
}
array(3) {
[0]=>
array(2) {
["p"]=>
int(1)
["q"]=>
int(2)
}
[1]=>
array(2) {
["r"]=>
int(3)
["s"]=>
int(4)
}
[2]=>
array(2) {
["u"]=>
int(5)
["v"]=>
int(6)
}
}
array(3) {
[0]=>
array(2) {
[0]=>
int(1)
[1]=>
int(2)
}
[1]=>
array(2) {
[0]=>
int(3)
[1]=>
int(4)
}
[2]=>
array(2) {
[0]=>
int(5)
[1]=>
int(6)
}
}
[3]
array(2) {
[0]=>
array(3) {
[0]=>
int(1)
[1]=>
int(2)
[2]=>
int(3)
}
[1]=>
array(3) {
[0]=>
int(4)
[1]=>
int(5)
[2]=>
int(6)
}
}
array(2) {
[0]=>
array(3) {
["p"]=>
int(1)
["q"]=>
int(2)
["r"]=>
int(3)
}
[1]=>
array(3) {
["s"]=>
int(4)
["u"]=>
int(5)
["v"]=>
int(6)
}
}
array(2) {
[0]=>
array(3) {
[0]=>
int(1)
[1]=>
int(2)
[2]=>
int(3)
}
[1]=>
array(3) {
[0]=>
int(4)
[1]=>
int(5)
[2]=>
int(6)
}
}
[4]
array(2) {
[0]=>
array(4) {
[0]=>
int(1)
[1]=>
int(2)
[2]=>
int(3)
[3]=>
int(4)
}
[1]=>
array(2) {
[0]=>
int(5)
[1]=>
int(6)
}
}
array(2) {
[0]=>
array(4) {
["p"]=>
int(1)
["q"]=>
int(2)
["r"]=>
int(3)
["s"]=>
int(4)
}
[1]=>
array(2) {
["u"]=>
int(5)
["v"]=>
int(6)
}
}
array(2) {
[0]=>
array(4) {
[0]=>
int(1)
[1]=>
int(2)
[2]=>
int(3)
[3]=>
int(4)
}
[1]=>
array(2) {
[0]=>
int(5)
[1]=>
int(6)
}
}
[5]
array(2) {
[0]=>
array(5) {
[0]=>
int(1)
[1]=>
int(2)
[2]=>
int(3)
[3]=>
int(4)
[4]=>
int(5)
}
[1]=>
array(1) {
[0]=>
int(6)
}
}
array(2) {
[0]=>
array(5) {
["p"]=>
int(1)
["q"]=>
int(2)
["r"]=>
int(3)
["s"]=>
int(4)
["u"]=>
int(5)
}
[1]=>
array(1) {
["v"]=>
int(6)
}
}
array(2) {
[0]=>
array(5) {
[0]=>
int(1)
[1]=>
int(2)
[2]=>
int(3)
[3]=>
int(4)
[4]=>
int(5)
}
[1]=>
array(1) {
[0]=>
int(6)
}
}
[6]
array(1) {
[0]=>
array(6) {
[0]=>
int(1)
[1]=>
int(2)
[2]=>
int(3)
[3]=>
int(4)
[4]=>
int(5)
[5]=>
int(6)
}
}
array(1) {
[0]=>
array(6) {
["p"]=>
int(1)
["q"]=>
int(2)
["r"]=>
int(3)
["s"]=>
int(4)
["u"]=>
int(5)
["v"]=>
int(6)
}
}
array(1) {
[0]=>
array(6) {
[0]=>
int(1)
[1]=>
int(2)
[2]=>
int(3)
[3]=>
int(4)
[4]=>
int(5)
[5]=>
int(6)
}
}
@@ -0,0 +1,11 @@
<?php
$array = array ("a" => "A");
var_dump ($array);
for ($i = 0; $i < (sizeof($array) + 1); $i++) {
echo "[$i]\n";
var_dump (@array_chunk ($array, $i));
var_dump (@array_chunk ($array, $i, TRUE));
var_dump (@array_chunk ($array, $i, FALSE));
echo "\n";
}
?>
@@ -0,0 +1,31 @@
array(1) {
["a"]=>
string(1) "A"
}
[0]
NULL
NULL
NULL
[1]
array(1) {
[0]=>
array(1) {
[0]=>
string(1) "A"
}
}
array(1) {
[0]=>
array(1) {
["a"]=>
string(1) "A"
}
}
array(1) {
[0]=>
array(1) {
[0]=>
string(1) "A"
}
}
@@ -0,0 +1,11 @@
<?php
$array = array ("p" => "A", "q" => "B", "r" => "C", "s" => "D", "u" => "E", "v" => "F");
var_dump ($array);
for ($i = 0; $i < (sizeof($array) + 1); $i++) {
echo "[$i]\n";
var_dump (@array_chunk ($array, $i));
var_dump (@array_chunk ($array, $i, TRUE));
var_dump (@array_chunk ($array, $i, FALSE));
echo "\n";
}
?>
@@ -0,0 +1,426 @@
array(6) {
["p"]=>
string(1) "A"
["q"]=>
string(1) "B"
["r"]=>
string(1) "C"
["s"]=>
string(1) "D"
["u"]=>
string(1) "E"
["v"]=>
string(1) "F"
}
[0]
NULL
NULL
NULL
[1]
array(6) {
[0]=>
array(1) {
[0]=>
string(1) "A"
}
[1]=>
array(1) {
[0]=>
string(1) "B"
}
[2]=>
array(1) {
[0]=>
string(1) "C"
}
[3]=>
array(1) {
[0]=>
string(1) "D"
}
[4]=>
array(1) {
[0]=>
string(1) "E"
}
[5]=>
array(1) {
[0]=>
string(1) "F"
}
}
array(6) {
[0]=>
array(1) {
["p"]=>
string(1) "A"
}
[1]=>
array(1) {
["q"]=>
string(1) "B"
}
[2]=>
array(1) {
["r"]=>
string(1) "C"
}
[3]=>
array(1) {
["s"]=>
string(1) "D"
}
[4]=>
array(1) {
["u"]=>
string(1) "E"
}
[5]=>
array(1) {
["v"]=>
string(1) "F"
}
}
array(6) {
[0]=>
array(1) {
[0]=>
string(1) "A"
}
[1]=>
array(1) {
[0]=>
string(1) "B"
}
[2]=>
array(1) {
[0]=>
string(1) "C"
}
[3]=>
array(1) {
[0]=>
string(1) "D"
}
[4]=>
array(1) {
[0]=>
string(1) "E"
}
[5]=>
array(1) {
[0]=>
string(1) "F"
}
}
[2]
array(3) {
[0]=>
array(2) {
[0]=>
string(1) "A"
[1]=>
string(1) "B"
}
[1]=>
array(2) {
[0]=>
string(1) "C"
[1]=>
string(1) "D"
}
[2]=>
array(2) {
[0]=>
string(1) "E"
[1]=>
string(1) "F"
}
}
array(3) {
[0]=>
array(2) {
["p"]=>
string(1) "A"
["q"]=>
string(1) "B"
}
[1]=>
array(2) {
["r"]=>
string(1) "C"
["s"]=>
string(1) "D"
}
[2]=>
array(2) {
["u"]=>
string(1) "E"
["v"]=>
string(1) "F"
}
}
array(3) {
[0]=>
array(2) {
[0]=>
string(1) "A"
[1]=>
string(1) "B"
}
[1]=>
array(2) {
[0]=>
string(1) "C"
[1]=>
string(1) "D"
}
[2]=>
array(2) {
[0]=>
string(1) "E"
[1]=>
string(1) "F"
}
}
[3]
array(2) {
[0]=>
array(3) {
[0]=>
string(1) "A"
[1]=>
string(1) "B"
[2]=>
string(1) "C"
}
[1]=>
array(3) {
[0]=>
string(1) "D"
[1]=>
string(1) "E"
[2]=>
string(1) "F"
}
}
array(2) {
[0]=>
array(3) {
["p"]=>
string(1) "A"
["q"]=>
string(1) "B"
["r"]=>
string(1) "C"
}
[1]=>
array(3) {
["s"]=>
string(1) "D"
["u"]=>
string(1) "E"
["v"]=>
string(1) "F"
}
}
array(2) {
[0]=>
array(3) {
[0]=>
string(1) "A"
[1]=>
string(1) "B"
[2]=>
string(1) "C"
}
[1]=>
array(3) {
[0]=>
string(1) "D"
[1]=>
string(1) "E"
[2]=>
string(1) "F"
}
}
[4]
array(2) {
[0]=>
array(4) {
[0]=>
string(1) "A"
[1]=>
string(1) "B"
[2]=>
string(1) "C"
[3]=>
string(1) "D"
}
[1]=>
array(2) {
[0]=>
string(1) "E"
[1]=>
string(1) "F"
}
}
array(2) {
[0]=>
array(4) {
["p"]=>
string(1) "A"
["q"]=>
string(1) "B"
["r"]=>
string(1) "C"
["s"]=>
string(1) "D"
}
[1]=>
array(2) {
["u"]=>
string(1) "E"
["v"]=>
string(1) "F"
}
}
array(2) {
[0]=>
array(4) {
[0]=>
string(1) "A"
[1]=>
string(1) "B"
[2]=>
string(1) "C"
[3]=>
string(1) "D"
}
[1]=>
array(2) {
[0]=>
string(1) "E"
[1]=>
string(1) "F"
}
}
[5]
array(2) {
[0]=>
array(5) {
[0]=>
string(1) "A"
[1]=>
string(1) "B"
[2]=>
string(1) "C"
[3]=>
string(1) "D"
[4]=>
string(1) "E"
}
[1]=>
array(1) {
[0]=>
string(1) "F"
}
}
array(2) {
[0]=>
array(5) {
["p"]=>
string(1) "A"
["q"]=>
string(1) "B"
["r"]=>
string(1) "C"
["s"]=>
string(1) "D"
["u"]=>
string(1) "E"
}
[1]=>
array(1) {
["v"]=>
string(1) "F"
}
}
array(2) {
[0]=>
array(5) {
[0]=>
string(1) "A"
[1]=>
string(1) "B"
[2]=>
string(1) "C"
[3]=>
string(1) "D"
[4]=>
string(1) "E"
}
[1]=>
array(1) {
[0]=>
string(1) "F"
}
}
[6]
array(1) {
[0]=>
array(6) {
[0]=>
string(1) "A"
[1]=>
string(1) "B"
[2]=>
string(1) "C"
[3]=>
string(1) "D"
[4]=>
string(1) "E"
[5]=>
string(1) "F"
}
}
array(1) {
[0]=>
array(6) {
["p"]=>
string(1) "A"
["q"]=>
string(1) "B"
["r"]=>
string(1) "C"
["s"]=>
string(1) "D"
["u"]=>
string(1) "E"
["v"]=>
string(1) "F"
}
}
array(1) {
[0]=>
array(6) {
[0]=>
string(1) "A"
[1]=>
string(1) "B"
[2]=>
string(1) "C"
[3]=>
string(1) "D"
[4]=>
string(1) "E"
[5]=>
string(1) "F"
}
}
@@ -0,0 +1,11 @@
<?php
$array =array (0);
var_dump ($array);
for ($i = 0; $i < (sizeof($array) + 1); $i++) {
echo "[$i]\n";
var_dump (@array_chunk ($array, $i));
var_dump (@array_chunk ($array, $i, TRUE));
var_dump (@array_chunk ($array, $i, FALSE));
echo "\n";
}
?>
@@ -0,0 +1,31 @@
array(1) {
[0]=>
int(0)
}
[0]
NULL
NULL
NULL
[1]
array(1) {
[0]=>
array(1) {
[0]=>
int(0)
}
}
array(1) {
[0]=>
array(1) {
[0]=>
int(0)
}
}
array(1) {
[0]=>
array(1) {
[0]=>
int(0)
}
}
@@ -0,0 +1,11 @@
<?php
$array = array (1);
var_dump ($array);
for ($i = 0; $i < (sizeof($array) + 1); $i++) {
echo "[$i]\n";
var_dump (@array_chunk ($array, $i));
var_dump (@array_chunk ($array, $i, TRUE));
var_dump (@array_chunk ($array, $i, FALSE));
echo "\n";
}
?>
@@ -0,0 +1,31 @@
array(1) {
[0]=>
int(1)
}
[0]
NULL
NULL
NULL
[1]
array(1) {
[0]=>
array(1) {
[0]=>
int(1)
}
}
array(1) {
[0]=>
array(1) {
[0]=>
int(1)
}
}
array(1) {
[0]=>
array(1) {
[0]=>
int(1)
}
}
@@ -0,0 +1,11 @@
<?php
$array = array (-1);
var_dump ($array);
for ($i = 0; $i < (sizeof($array) + 1); $i++) {
echo "[$i]\n";
var_dump (@array_chunk ($array, $i));
var_dump (@array_chunk ($array, $i, TRUE));
var_dump (@array_chunk ($array, $i, FALSE));
echo "\n";
}
?>
@@ -0,0 +1,31 @@
array(1) {
[0]=>
int(-1)
}
[0]
NULL
NULL
NULL
[1]
array(1) {
[0]=>
array(1) {
[0]=>
int(-1)
}
}
array(1) {
[0]=>
array(1) {
[0]=>
int(-1)
}
}
array(1) {
[0]=>
array(1) {
[0]=>
int(-1)
}
}
@@ -0,0 +1,11 @@
<?php
$array = array (0, 2);
var_dump ($array);
for ($i = 0; $i < (sizeof($array) + 1); $i++) {
echo "[$i]\n";
var_dump (@array_chunk ($array, $i));
var_dump (@array_chunk ($array, $i, TRUE));
var_dump (@array_chunk ($array, $i, FALSE));
echo "\n";
}
?>
@@ -0,0 +1,77 @@
array(2) {
[0]=>
int(0)
[1]=>
int(2)
}
[0]
NULL
NULL
NULL
[1]
array(2) {
[0]=>
array(1) {
[0]=>
int(0)
}
[1]=>
array(1) {
[0]=>
int(2)
}
}
array(2) {
[0]=>
array(1) {
[0]=>
int(0)
}
[1]=>
array(1) {
[1]=>
int(2)
}
}
array(2) {
[0]=>
array(1) {
[0]=>
int(0)
}
[1]=>
array(1) {
[0]=>
int(2)
}
}
[2]
array(1) {
[0]=>
array(2) {
[0]=>
int(0)
[1]=>
int(2)
}
}
array(1) {
[0]=>
array(2) {
[0]=>
int(0)
[1]=>
int(2)
}
}
array(1) {
[0]=>
array(2) {
[0]=>
int(0)
[1]=>
int(2)
}
}
@@ -0,0 +1,70 @@
<?php
/* Prototype : array array_chunk(array $array, int $size [, bool $preserve_keys])
* Description: Split array into chunks
* Source code: ext/standard/array.c
*/
/*
* Testing array_chunk() function with unexpected values for 'preserve_keys'
*/
echo "*** Testing array_chunk() : usage variations ***\n";
// input array
$input = array(1, 2);
$size = 10;
//get an unset variable
$unset_var = 10;
unset ($unset_var);
//array of values to iterate over
$values = array(
// int data
/*1*/ 0,
1,
12345,
-2345,
// float data
/*5*/ 10.5,
-10.5,
10.5e10,
10.6E-10,
.5,
// null data
/*10*/ NULL,
null,
// empty data
/*12*/ "",
'',
// string data
/*14*/ "string",
'string',
// object data
/*16*/ new stdclass(),
// undefined data
/*17*/ @undefined_var,
// unset data
/*18*/ @unset_var
);
$count = 1;
// loop through each element of the array for preserve_keys
foreach($values as $value) {
echo "\n-- Iteration $count --\n";
var_dump( array_chunk($input, $size, $value) );
$count++;
}
echo "Done";
?>
@@ -0,0 +1,193 @@
*** Testing array_chunk() : usage variations ***
-- Iteration 1 --
array(1) {
[0]=>
array(2) {
[0]=>
int(1)
[1]=>
int(2)
}
}
-- Iteration 2 --
array(1) {
[0]=>
array(2) {
[0]=>
int(1)
[1]=>
int(2)
}
}
-- Iteration 3 --
array(1) {
[0]=>
array(2) {
[0]=>
int(1)
[1]=>
int(2)
}
}
-- Iteration 4 --
array(1) {
[0]=>
array(2) {
[0]=>
int(1)
[1]=>
int(2)
}
}
-- Iteration 5 --
array(1) {
[0]=>
array(2) {
[0]=>
int(1)
[1]=>
int(2)
}
}
-- Iteration 6 --
array(1) {
[0]=>
array(2) {
[0]=>
int(1)
[1]=>
int(2)
}
}
-- Iteration 7 --
array(1) {
[0]=>
array(2) {
[0]=>
int(1)
[1]=>
int(2)
}
}
-- Iteration 8 --
array(1) {
[0]=>
array(2) {
[0]=>
int(1)
[1]=>
int(2)
}
}
-- Iteration 9 --
array(1) {
[0]=>
array(2) {
[0]=>
int(1)
[1]=>
int(2)
}
}
-- Iteration 10 --
array(1) {
[0]=>
array(2) {
[0]=>
int(1)
[1]=>
int(2)
}
}
-- Iteration 11 --
array(1) {
[0]=>
array(2) {
[0]=>
int(1)
[1]=>
int(2)
}
}
-- Iteration 12 --
array(1) {
[0]=>
array(2) {
[0]=>
int(1)
[1]=>
int(2)
}
}
-- Iteration 13 --
array(1) {
[0]=>
array(2) {
[0]=>
int(1)
[1]=>
int(2)
}
}
-- Iteration 14 --
array(1) {
[0]=>
array(2) {
[0]=>
int(1)
[1]=>
int(2)
}
}
-- Iteration 15 --
array(1) {
[0]=>
array(2) {
[0]=>
int(1)
[1]=>
int(2)
}
}
-- Iteration 16 --
HipHop Warning: %a
NULL
-- Iteration 17 --
array(1) {
[0]=>
array(2) {
[0]=>
int(1)
[1]=>
int(2)
}
}
-- Iteration 18 --
array(1) {
[0]=>
array(2) {
[0]=>
int(1)
[1]=>
int(2)
}
}
Done
@@ -0,0 +1,11 @@
<?php
$array = array (1, 2, 3);
var_dump ($array);
for ($i = 0; $i < (sizeof($array) + 1); $i++) {
echo "[$i]\n";
var_dump (@array_chunk ($array, $i));
var_dump (@array_chunk ($array, $i, TRUE));
var_dump (@array_chunk ($array, $i, FALSE));
echo "\n";
}
?>
@@ -0,0 +1,144 @@
array(3) {
[0]=>
int(1)
[1]=>
int(2)
[2]=>
int(3)
}
[0]
NULL
NULL
NULL
[1]
array(3) {
[0]=>
array(1) {
[0]=>
int(1)
}
[1]=>
array(1) {
[0]=>
int(2)
}
[2]=>
array(1) {
[0]=>
int(3)
}
}
array(3) {
[0]=>
array(1) {
[0]=>
int(1)
}
[1]=>
array(1) {
[1]=>
int(2)
}
[2]=>
array(1) {
[2]=>
int(3)
}
}
array(3) {
[0]=>
array(1) {
[0]=>
int(1)
}
[1]=>
array(1) {
[0]=>
int(2)
}
[2]=>
array(1) {
[0]=>
int(3)
}
}
[2]
array(2) {
[0]=>
array(2) {
[0]=>
int(1)
[1]=>
int(2)
}
[1]=>
array(1) {
[0]=>
int(3)
}
}
array(2) {
[0]=>
array(2) {
[0]=>
int(1)
[1]=>
int(2)
}
[1]=>
array(1) {
[2]=>
int(3)
}
}
array(2) {
[0]=>
array(2) {
[0]=>
int(1)
[1]=>
int(2)
}
[1]=>
array(1) {
[0]=>
int(3)
}
}
[3]
array(1) {
[0]=>
array(3) {
[0]=>
int(1)
[1]=>
int(2)
[2]=>
int(3)
}
}
array(1) {
[0]=>
array(3) {
[0]=>
int(1)
[1]=>
int(2)
[2]=>
int(3)
}
}
array(1) {
[0]=>
array(3) {
[0]=>
int(1)
[1]=>
int(2)
[2]=>
int(3)
}
}
@@ -0,0 +1,11 @@
<?php
$array = array (1 => 0);
var_dump ($array);
for ($i = 0; $i < (sizeof($array) + 1); $i++) {
echo "[$i]\n";
var_dump (@array_chunk ($array, $i));
var_dump (@array_chunk ($array, $i, TRUE));
var_dump (@array_chunk ($array, $i, FALSE));
echo "\n";
}
?>
@@ -0,0 +1,31 @@
array(1) {
[1]=>
int(0)
}
[0]
NULL
NULL
NULL
[1]
array(1) {
[0]=>
array(1) {
[0]=>
int(0)
}
}
array(1) {
[0]=>
array(1) {
[1]=>
int(0)
}
}
array(1) {
[0]=>
array(1) {
[0]=>
int(0)
}
}
@@ -0,0 +1,11 @@
<?php
$array = array (2 => 1);
var_dump ($array);
for ($i = 0; $i < (sizeof($array) + 1); $i++) {
echo "[$i]\n";
var_dump (@array_chunk ($array, $i));
var_dump (@array_chunk ($array, $i, TRUE));
var_dump (@array_chunk ($array, $i, FALSE));
echo "\n";
}
?>
@@ -0,0 +1,31 @@
array(1) {
[2]=>
int(1)
}
[0]
NULL
NULL
NULL
[1]
array(1) {
[0]=>
array(1) {
[0]=>
int(1)
}
}
array(1) {
[0]=>
array(1) {
[2]=>
int(1)
}
}
array(1) {
[0]=>
array(1) {
[0]=>
int(1)
}
}
@@ -0,0 +1,11 @@
<?php
$array = array (3 => -1);
var_dump ($array);
for ($i = 0; $i < (sizeof($array) + 1); $i++) {
echo "[$i]\n";
var_dump (@array_chunk ($array, $i));
var_dump (@array_chunk ($array, $i, TRUE));
var_dump (@array_chunk ($array, $i, FALSE));
echo "\n";
}
?>
@@ -0,0 +1,31 @@
array(1) {
[3]=>
int(-1)
}
[0]
NULL
NULL
NULL
[1]
array(1) {
[0]=>
array(1) {
[0]=>
int(-1)
}
}
array(1) {
[0]=>
array(1) {
[3]=>
int(-1)
}
}
array(1) {
[0]=>
array(1) {
[0]=>
int(-1)
}
}
@@ -0,0 +1,11 @@
<?php
$array = array (1 => 0, 2 => 2);
var_dump ($array);
for ($i = 0; $i < (sizeof($array) + 1); $i++) {
echo "[$i]\n";
var_dump (@array_chunk ($array, $i));
var_dump (@array_chunk ($array, $i, TRUE));
var_dump (@array_chunk ($array, $i, FALSE));
echo "\n";
}
?>
@@ -0,0 +1,77 @@
array(2) {
[1]=>
int(0)
[2]=>
int(2)
}
[0]
NULL
NULL
NULL
[1]
array(2) {
[0]=>
array(1) {
[0]=>
int(0)
}
[1]=>
array(1) {
[0]=>
int(2)
}
}
array(2) {
[0]=>
array(1) {
[1]=>
int(0)
}
[1]=>
array(1) {
[2]=>
int(2)
}
}
array(2) {
[0]=>
array(1) {
[0]=>
int(0)
}
[1]=>
array(1) {
[0]=>
int(2)
}
}
[2]
array(1) {
[0]=>
array(2) {
[0]=>
int(0)
[1]=>
int(2)
}
}
array(1) {
[0]=>
array(2) {
[1]=>
int(0)
[2]=>
int(2)
}
}
array(1) {
[0]=>
array(2) {
[0]=>
int(0)
[1]=>
int(2)
}
}
@@ -0,0 +1,26 @@
<?php
$array1 = array('green', 'red', 'yellow');
$array2 = array('1', '2', '3');
$array3 = array(0, 1, 2);
$array4 = array(TRUE, FALSE, NULL);
$a = array_combine($array1, $array1);
$b = array_combine($array1, $array2);
$c = array_combine($array1, $array3);
$d = array_combine($array1, $array4);
$e = array_combine($array2, $array1);
$f = array_combine($array2, $array2);
$g = array_combine($array2, $array3);
$h = array_combine($array2, $array4);
$i = array_combine($array3, $array1);
$j = array_combine($array3, $array2);
$k = array_combine($array3, $array3);
$l = array_combine($array3, $array4);
$m = array_combine($array4, $array1);
$n = array_combine($array4, $array2);
$o = array_combine($array4, $array3);
$p = array_combine($array4, $array4);
for($letter = "a"; $letter <= "p"; $letter++)
{
print_r($$letter);
}
?>
@@ -0,0 +1,92 @@
Array
(
[green] => green
[red] => red
[yellow] => yellow
)
Array
(
[green] => 1
[red] => 2
[yellow] => 3
)
Array
(
[green] => 0
[red] => 1
[yellow] => 2
)
Array
(
[green] => 1
[red] =>
[yellow] =>
)
Array
(
[1] => green
[2] => red
[3] => yellow
)
Array
(
[1] => 1
[2] => 2
[3] => 3
)
Array
(
[1] => 0
[2] => 1
[3] => 2
)
Array
(
[1] => 1
[2] =>
[3] =>
)
Array
(
[0] => green
[1] => red
[2] => yellow
)
Array
(
[0] => 1
[1] => 2
[2] => 3
)
Array
(
[0] => 0
[1] => 1
[2] => 2
)
Array
(
[0] => 1
[1] =>
[2] =>
)
Array
(
[1] => green
[] => yellow
)
Array
(
[1] => 1
[] => 3
)
Array
(
[1] => 0
[] => 2
)
Array
(
[1] => 1
[] =>
)
@@ -0,0 +1,27 @@
<?php
/* Prototype : array array_combine(array $keys, array $values)
* Description: Creates an array by using the elements of the first parameter as keys
* and the elements of the second as the corresponding values
* Source code: ext/standard/array.c
*/
echo "*** Testing array_combine() : error conditions specific to array_combine() ***\n";
// Testing array_combine by passing empty arrays to $keys and $values arguments
echo "\n-- Testing array_combine() function with empty arrays --\n";
var_dump( array_combine(array(), array()) );
// Testing array_combine by passing empty array to $keys
echo "\n-- Testing array_combine() function with empty array for \$keys argument --\n";
var_dump( array_combine(array(), array(1, 2)) );
// Testing array_combine by passing empty array to $values
echo "\n-- Testing array_combine() function with empty array for \$values argument --\n";
var_dump( array_combine(array(1, 2), array()) );
// Testing array_combine with arrays having unequal number of elements
echo "\n-- Testing array_combine() function by passing array with unequal number of elements --\n";
var_dump( array_combine(array(1, 2), array(1, 2, 3)) );
echo "Done";
?>
@@ -0,0 +1,18 @@
*** Testing array_combine() : error conditions specific to array_combine() ***
-- Testing array_combine() function with empty arrays --
array(0) {
}
-- Testing array_combine() function with empty array for $keys argument --
HipHop Warning: %a
bool(false)
-- Testing array_combine() function with empty array for $values argument --
HipHop Warning: %a
bool(false)
-- Testing array_combine() function by passing array with unequal number of elements --
HipHop Warning: %a
bool(false)
Done
@@ -0,0 +1,83 @@
<?php
/* Prototype : array array_combine(array $keys, array $values)
* Description: Creates an array by using the elements of the first parameter as keys
* and the elements of the second as the corresponding values
* Source code: ext/standard/array.c
*/
/*
* Passing different types of arrays to both $keys and $values arguments and testing whether
* array_combine() behaves in an expected way with the arguments passed to the function
*/
echo "*** Testing array_combine() : Passing different types of arrays to both \$keys and \$values argument ***\n";
/* Different heredoc strings passed as argument to arrays */
// heredoc with blank line
$blank_line = <<<EOT
EOT;
// heredoc with multiline string
$multiline_string = <<<EOT
hello world
The quick brown fox jumped over;
the lazy dog
This is a double quoted string
EOT;
// heredoc with diferent whitespaces
$diff_whitespaces = <<<EOT
hello\r world\t
1111\t\t != 2222\v\v
heredoc\ndouble quoted string. with\vdifferent\fwhite\vspaces
EOT;
// heredoc with quoted strings and numeric values
$numeric_string = <<<EOT
11 < 12. 123 >22
'single quoted string'
"double quoted string"
2222 != 1111.\t 0000 = 0000\n
EOT;
// arrays passed to $keys argument
$arrays = array (
/*1*/ array(1, 2), // with default keys and numeric values
array(1.1, 2.2), // with default keys & float values
array(false,true), // with default keys and boolean values
array(), // empty array
/*5*/ array(NULL), // with NULL
array("a\v\f","aaaa\r","b","b\tbbb","c","\[\]\!\@\#\$\%\^\&\*\(\)\{\}"), // with double quoted strings
array('a\v\f','aaaa\r','b','b\tbbb','c','\[\]\!\@\#\$\%\^\&\*\(\)\{\}'), // with single quoted strings
array("h1" => $blank_line, "h2" => $multiline_string, "h3" => $diff_whitespaces, $numeric_string), // with heredocs
// associative arrays
/*9*/ array(1 => "one", 2 => "two", 3 => "three"), // explicit numeric keys, string values
array("one" => 1, "two" => 2, "three" => 3 ), // string keys & numeric values
array( 1 => 10, 2 => 20, 4 => 40, 3 => 30), // explicit numeric keys and numeric values
array( "one" => "ten", "two" => "twenty", "three" => "thirty"), // string key/value
array("one" => 1, 2 => "two", 4 => "four"), //mixed
// associative array, containing null/empty/boolean values as key/value
/*14*/ array(NULL => "NULL", null => "null", "NULL" => NULL, "null" => null),
array(true => "true", false => "false", "false" => false, "true" => true),
array("" => "emptyd", '' => 'emptys', "emptyd" => "", 'emptys' => ''),
array(1 => '', 2 => "", 3 => NULL, 4 => null, 5 => false, 6 => true),
array('' => 1, "" => 2, NULL => 3, null => 4, false => 5, true => 6),
// array with repetative keys
/*19*/ array("One" => 1, "two" => 2, "One" => 10, "two" => 20, "three" => 3)
);
// loop through each sub-array within $arrays to check the behavior of array_combine()
// same arrays are passed to both $keys and $values
$iterator = 1;
foreach($arrays as $array) {
echo "-- Iteration $iterator --\n";
var_dump( array_combine($array, $array) );
$iterator++;
}
echo "Done";
?>
@@ -0,0 +1,195 @@
*** Testing array_combine() : Passing different types of arrays to both $keys and $values argument ***
-- Iteration 1 --
array(2) {
[1]=>
int(1)
[2]=>
int(2)
}
-- Iteration 2 --
array(2) {
["1.1"]=>
float(1.1)
["2.2"]=>
float(2.2)
}
-- Iteration 3 --
array(2) {
[""]=>
bool(false)
[1]=>
bool(true)
}
-- Iteration 4 --
array(0) {
}
-- Iteration 5 --
array(1) {
[""]=>
NULL
}
-- Iteration 6 --
array(6) {
["a "]=>
string(3) "a "
["aaaa
"]=>
string(5) "aaaa
"
["b"]=>
string(1) "b"
["b bbb"]=>
string(5) "b bbb"
["c"]=>
string(1) "c"
["\[\]\!\@\#$\%\^\&\*\(\)\{\}"]=>
string(27) "\[\]\!\@\#$\%\^\&\*\(\)\{\}"
}
-- Iteration 7 --
array(6) {
["a\v\f"]=>
string(5) "a\v\f"
["aaaa\r"]=>
string(6) "aaaa\r"
["b"]=>
string(1) "b"
["b\tbbb"]=>
string(6) "b\tbbb"
["c"]=>
string(1) "c"
["\[\]\!\@\#\$\%\^\&\*\(\)\{\}"]=>
string(28) "\[\]\!\@\#\$\%\^\&\*\(\)\{\}"
}
-- Iteration 8 --
array(4) {
["
"]=>
string(1) "
"
["hello world
The quick brown fox jumped over;
the lazy dog
This is a double quoted string"]=>
string(88) "hello world
The quick brown fox jumped over;
the lazy dog
This is a double quoted string"
["hello
world
1111 != 2222
heredoc
double quoted string. with different white spaces"]=>
string(88) "hello
world
1111 != 2222
heredoc
double quoted string. with different white spaces"
["11 < 12. 123 >22
'single quoted string'
"double quoted string"
2222 != 1111. 0000 = 0000
"]=>
string(90) "11 < 12. 123 >22
'single quoted string'
"double quoted string"
2222 != 1111. 0000 = 0000
"
}
-- Iteration 9 --
array(3) {
["one"]=>
string(3) "one"
["two"]=>
string(3) "two"
["three"]=>
string(5) "three"
}
-- Iteration 10 --
array(3) {
[1]=>
int(1)
[2]=>
int(2)
[3]=>
int(3)
}
-- Iteration 11 --
array(4) {
[10]=>
int(10)
[20]=>
int(20)
[40]=>
int(40)
[30]=>
int(30)
}
-- Iteration 12 --
array(3) {
["ten"]=>
string(3) "ten"
["twenty"]=>
string(6) "twenty"
["thirty"]=>
string(6) "thirty"
}
-- Iteration 13 --
array(3) {
[1]=>
int(1)
["two"]=>
string(3) "two"
["four"]=>
string(4) "four"
}
-- Iteration 14 --
array(2) {
["null"]=>
string(4) "null"
[""]=>
NULL
}
-- Iteration 15 --
array(4) {
["true"]=>
string(4) "true"
["false"]=>
string(5) "false"
[""]=>
bool(false)
[1]=>
bool(true)
}
-- Iteration 16 --
array(2) {
["emptys"]=>
string(6) "emptys"
[""]=>
string(0) ""
}
-- Iteration 17 --
array(2) {
[""]=>
bool(false)
[1]=>
bool(true)
}
-- Iteration 18 --
array(3) {
[4]=>
int(4)
[5]=>
int(5)
[6]=>
int(6)
}
-- Iteration 19 --
array(3) {
[10]=>
int(10)
[20]=>
int(20)
[3]=>
int(3)
}
Done
@@ -0,0 +1,86 @@
<?php
/* Prototype : array array_combine(array $keys, array $values)
* Description: Creates an array by using the elements of the first parameter as keys
* and the elements of the second as the corresponding values
* Source code: ext/standard/array.c
*/
/*
* Testing the functionality of array_combine() by passing different
* associative arrays having different possible keys to $keys argument and
* associative arrays having different possible keys to $values argument.
*/
echo "*** Testing array_combine() : assoc array with diff keys to both \$keys and \$values argument ***\n";
// get an unset variable
$unset_var = 10;
unset ($unset_var);
// get a resource variable
$fp = fopen(__FILE__, "r");
// get a class
class classA
{
public function __toString(){
return "Class A object";
}
}
// get a heredoc string
$heredoc = <<<EOT
Hello world
EOT;
// different variations of associative arrays to be passed to $arr1 argument
$arrays = array (
// empty array
/*1*/ array(),
// arrays with integer keys
array(0 => "0"),
array(1 => "1"),
array(1 => "1", 2 => "2", 3 => "3", 4 => "4"),
// arrays with float keys
/*5*/ array(2.3333 => "float"),
array(1.2 => "f1", 3.33 => "f2",
4.89999922839999 => "f3",
33333333.333333 => "f4"),
// arrays with string keys
/*7*/ array('\tHello' => 111, 're\td' => "color",
'\v\fworld' => 2.2, 'pen\n' => 33),
array("\tHello" => 111, "re\td" => "color",
"\v\fworld" => 2.2, "pen\n" => 33),
array("hello", $heredoc => "string"), // heredoc
// array with object, unset variable and resource variable
/*10*/ array(new classA() => 11, @$unset_var => "hello", $fp => 'resource'),
// array with mixed keys
/*11*/ array('hello' => 1, new classA() => 2, "fruit" => 2.2,
$fp => 'resource', 133 => "int", 444.432 => "float",
@$unset_var => "unset", $heredoc => "heredoc")
);
// array to be passsed to $arr2 argument
$arr2 = array(0 => 0, 2 => "float", 4 => "f3", 33333333 => "f4",
"\tHello" => 111, 2.2, 'color', "Hello world" => "string",
"pen\n" => 33, new classA() => 11, 133 => "int");
// loop through each sub-array within $arrays to check the behavior of array_combine()
// same arrays are passed to both $keys and $values
$iterator = 1;
foreach($arrays as $array) {
echo "-- Iteration $iterator --\n";
var_dump( array_combine($array, $array) );
$iterator++;
}
// close the file resource used
fclose($fp);
echo "Done";
?>
@@ -0,0 +1,96 @@
*** Testing array_combine() : assoc array with diff keys to both $keys and $values argument ***
HipHop Warning: %a
HipHop Warning: %a
HipHop Warning: %a
HipHop Warning: %a
HipHop Warning: %a
-- Iteration 1 --
array(0) {
}
-- Iteration 2 --
array(1) {
[0]=>
string(1) "0"
}
-- Iteration 3 --
array(1) {
[1]=>
string(1) "1"
}
-- Iteration 4 --
array(4) {
[1]=>
string(1) "1"
[2]=>
string(1) "2"
[3]=>
string(1) "3"
[4]=>
string(1) "4"
}
-- Iteration 5 --
array(1) {
["float"]=>
string(5) "float"
}
-- Iteration 6 --
array(4) {
["f1"]=>
string(2) "f1"
["f2"]=>
string(2) "f2"
["f3"]=>
string(2) "f3"
["f4"]=>
string(2) "f4"
}
-- Iteration 7 --
array(4) {
[111]=>
int(111)
["color"]=>
string(5) "color"
["2.2"]=>
float(2.2)
[33]=>
int(33)
}
-- Iteration 8 --
array(4) {
[111]=>
int(111)
["color"]=>
string(5) "color"
["2.2"]=>
float(2.2)
[33]=>
int(33)
}
-- Iteration 9 --
array(2) {
["hello"]=>
string(5) "hello"
["string"]=>
string(6) "string"
}
-- Iteration 10 --
array(1) {
["hello"]=>
string(5) "hello"
}
-- Iteration 11 --
array(6) {
[1]=>
int(1)
["2.2"]=>
float(2.2)
["int"]=>
string(3) "int"
["float"]=>
string(5) "float"
["unset"]=>
string(5) "unset"
["heredoc"]=>
string(7) "heredoc"
}
Done
@@ -0,0 +1,78 @@
<?php
/* Prototype : array array_combine(array $keys, array $values)
* Description: Creates an array by using the elements of the first parameter as keys
* and the elements of the second as the corresponding values
* Source code: ext/standard/array.c
*/
/*
* Testing the functionality of array_combine() by passing various
* associative arrays having different possible values to $keys argument and
* associative arrays having different possible values to $values argument.
*/
echo "*** Testing array_combine() : assoc array with diff values to both \$keys and \$values argument ***\n";
// get an unset variable
$unset_var = 10;
unset ($unset_var);
// get a resource variable
$fp = fopen(__FILE__, "r");
// get a class
class classA
{
public function __toString(){
return "Class A object";
}
}
// get a heredoc string
$heredoc = <<<EOT
Hello world
EOT;
// different variations of associative array
$arrays = array (
// empty array
/*1*/ array(),
// arrays with integer values
array('0' => 0),
array("1" => 1),
array("one" => 1, 'two' => 2, "three" => 3, 4 => 4),
// arrays with float values
/*5*/ array("float" => 2.3333),
array("f1" => 1.2, 'f2' => 3.33, 3 => 4.89999922839999, 'f4' => 33333333.333),
// arrays with string values
/*7*/ array(111 => "\tHello", "red" => "col\tor", 2 => "\v\fworld", 3.3 => "pen\n"),
array(111 => '\tHello', "red" => 'col\tor', 2 => '\v\fworld', 3.3 => 'pen\n'),
array(1 => "hello", "heredoc" => $heredoc),
// array with object, unset variable and resource variable
/*10*/ array(11 => new classA(), "unset" => @$unset_var, "resource" => $fp),
// array with mixed values
/*11*/ array(1 => 'hello', 2 => new classA(), 222 => "fruit",
'resource' => $fp, "int" => 133, "float" => 444.432,
"unset" => @$unset_var, "heredoc" => $heredoc)
);
// loop through each sub-array within $arrays to check the behavior of array_combine()
$iterator = 1;
foreach($arrays as $array) {
echo "-- Iteration $iterator --\n";
var_dump( array_combine($array, $array) );
$iterator++;
}
// close the file resource used
fclose($fp);
echo "Done";
?>
@@ -0,0 +1,103 @@
*** Testing array_combine() : assoc array with diff values to both $keys and $values argument ***
-- Iteration 1 --
array(0) {
}
-- Iteration 2 --
array(1) {
[0]=>
int(0)
}
-- Iteration 3 --
array(1) {
[1]=>
int(1)
}
-- Iteration 4 --
array(4) {
[1]=>
int(1)
[2]=>
int(2)
[3]=>
int(3)
[4]=>
int(4)
}
-- Iteration 5 --
array(1) {
["2.3333"]=>
float(2.3333)
}
-- Iteration 6 --
array(4) {
["1.2"]=>
float(1.2)
["3.33"]=>
float(3.33)
["4.8999992284"]=>
float(4.8999992284)
["33333333.333"]=>
float(33333333.333)
}
-- Iteration 7 --
array(4) {
[" Hello"]=>
string(6) " Hello"
["col or"]=>
string(6) "col or"
[" world"]=>
string(7) " world"
["pen
"]=>
string(4) "pen
"
}
-- Iteration 8 --
array(4) {
["\tHello"]=>
string(7) "\tHello"
["col\tor"]=>
string(7) "col\tor"
["\v\fworld"]=>
string(9) "\v\fworld"
["pen\n"]=>
string(5) "pen\n"
}
-- Iteration 9 --
array(2) {
["hello"]=>
string(5) "hello"
["Hello world"]=>
string(11) "Hello world"
}
-- Iteration 10 --
array(3) {
["Class A object"]=>
object(classA)#%d (0) {
}
[""]=>
NULL
["Resource id #%d"]=>
resource(%d) of type (stream)
}
-- Iteration 11 --
array(8) {
["hello"]=>
string(5) "hello"
["Class A object"]=>
object(classA)#%d (0) {
}
["fruit"]=>
string(5) "fruit"
["Resource id #%d"]=>
resource(%d) of type (stream)
[133]=>
int(133)
["444.432"]=>
float(444.432)
[""]=>
NULL
["Hello world"]=>
string(11) "Hello world"
}
Done
@@ -0,0 +1,21 @@
<?php
$arrays = array (
array (),
array (0),
array (1),
array (-1),
array (0, 0),
array (0, 1),
array (1, 1),
array (1, "hello", 1, "world", "hello"),
array ("hello", "world", "hello"),
array ("", "world", "", "hello", "world", "hello", "hello", "world", "hello"),
array (0, array (1, "hello", 1, "world", "hello")),
array (1, array (1, "hello", 1, "world", "hello"), array (1, "hello", 1, "world", "hello"), array (1, "hello", 1, "world", "hello")),
);
foreach ($arrays as $item) {
var_dump (@array_count_values ($item));
echo "\n";
}
?>
@@ -0,0 +1,69 @@
array(0) {
}
array(1) {
[0]=>
int(1)
}
array(1) {
[1]=>
int(1)
}
array(1) {
[-1]=>
int(1)
}
array(1) {
[0]=>
int(2)
}
array(2) {
[0]=>
int(1)
[1]=>
int(1)
}
array(1) {
[1]=>
int(2)
}
array(3) {
[1]=>
int(2)
["hello"]=>
int(2)
["world"]=>
int(1)
}
array(2) {
["hello"]=>
int(2)
["world"]=>
int(1)
}
array(3) {
[""]=>
int(2)
["world"]=>
int(3)
["hello"]=>
int(4)
}
array(1) {
[0]=>
int(1)
}
array(1) {
[1]=>
int(1)
}
@@ -0,0 +1,9 @@
<?php
//-=-=-=-=-
$a = array();
$b = 3;
$c = array(5);
array_diff($a, $b, $c);
//-=-=-=-=-=-
echo "OK!";
?>
@@ -0,0 +1,2 @@
HipHop Warning: %a
OK!
@@ -0,0 +1,97 @@
<?php
/* Prototype : array array_diff_assoc(array $arr1, array $arr2 [, array ...])
* Description: Returns the entries of arr1 that have values which are not present
* in any of the others arguments but do additional checks whether the keys are equal
* Source code: ext/standard/array.c
*/
/*
* pass array_diff_assoc arguments which are not arrays in place of $arr2
*/
echo "\n*** Testing array_diff_assoc() : usage variations ***\n";
$array = array(1, 2, 3);
//get an unset variable
$unset_var = 10;
unset ($unset_var);
// get a class
class classA
{
public function __toString() {
return "Class A object";
}
}
// heredoc string
$heredoc = <<<EOT
hello world
EOT;
// get a resource variable
$fp = fopen(__FILE__, "r");
//array of unexpected values to be passed to $arr1 argument
$inputs = array(
// int data
/*1*/ 0,
1,
12345,
-2345,
// float data
/*5*/ 10.5,
-10.5,
12.3456789000e10,
12.3456789000E-10,
.5,
// null data
/*10*/ NULL,
null,
// boolean data
/*12*/ true,
false,
TRUE,
FALSE,
// empty data
/*16*/ "",
'',
// string data
/*18*/ "string",
'string',
$heredoc,
// binary data
/*21*/ b"binary",
(binary)"binary",
// object data
/*23*/ new classA(),
// undefined data
/*24*/ @$undefined_var,
// unset data
/*25*/ @$unset_var,
// resource variable
/*26*/ $fp,
);
// loop through each element of $inputs to check the behavior of array_diff_assoc
$iterator = 1;
foreach($inputs as $input) {
echo "\n-- Iteration $iterator --\n";
var_dump( array_diff_assoc($array, $input));
$iterator++;
};
fclose($fp);
echo "Done";
?>
@@ -0,0 +1,106 @@
*** Testing array_diff_assoc() : usage variations ***
-- Iteration 1 --
HipHop Warning: %a
NULL
-- Iteration 2 --
HipHop Warning: %a
NULL
-- Iteration 3 --
HipHop Warning: %a
NULL
-- Iteration 4 --
HipHop Warning: %a
NULL
-- Iteration 5 --
HipHop Warning: %a
NULL
-- Iteration 6 --
HipHop Warning: %a
NULL
-- Iteration 7 --
HipHop Warning: %a
NULL
-- Iteration 8 --
HipHop Warning: %a
NULL
-- Iteration 9 --
HipHop Warning: %a
NULL
-- Iteration 10 --
HipHop Warning: %a
NULL
-- Iteration 11 --
HipHop Warning: %a
NULL
-- Iteration 12 --
HipHop Warning: %a
NULL
-- Iteration 13 --
HipHop Warning: %a
NULL
-- Iteration 14 --
HipHop Warning: %a
NULL
-- Iteration 15 --
HipHop Warning: %a
NULL
-- Iteration 16 --
HipHop Warning: %a
NULL
-- Iteration 17 --
HipHop Warning: %a
NULL
-- Iteration 18 --
HipHop Warning: %a
NULL
-- Iteration 19 --
HipHop Warning: %a
NULL
-- Iteration 20 --
HipHop Warning: %a
NULL
-- Iteration 21 --
HipHop Warning: %a
NULL
-- Iteration 22 --
HipHop Warning: %a
NULL
-- Iteration 23 --
HipHop Warning: %a
NULL
-- Iteration 24 --
HipHop Warning: %a
NULL
-- Iteration 25 --
HipHop Warning: %a
NULL
-- Iteration 26 --
HipHop Warning: %a
NULL
Done
@@ -0,0 +1,110 @@
<?php
/* Prototype : array array_diff_assoc(array $arr1, array $arr2 [, array ...])
* Description: Returns the entries of arr1 that have values which are not present
* in any of the others arguments but do additional checks whether the keys are equal
* Source code: ext/standard/array.c
*/
/*
* Test how array_diff_assoc() compares indexed arrays containing different data types
*/
echo "\n*** Testing array_diff_assoc() : usage variations ***\n";
$array = array(1, 2, 3);
//get an unset variable
$unset_var = 10;
unset ($unset_var);
// get a class
class classA
{
public function __toString() {
return "Class A object";
}
}
// heredoc string
$heredoc = <<<EOT
hello world
EOT;
//array of different data types to be passed to $arr1 argument
$inputs = array(
// int data
/*1*/
'int' => array(
0,
1,
12345,
-2345),
// float data
/*2*/
'float' => array(
10.5,
-10.5,
12.3456789000e10,
12.3456789000E-10,
.5),
// null data
/*3*/
'null' => array(
NULL,
null),
// boolean data
/*4*/
'bool' => array(
true,
false,
TRUE,
FALSE),
// empty data
/*5*/
'empty' => array(
"",
''),
// string data
/*6*/
'string' => array(
"string",
'string',
$heredoc),
// binary data
/*7*/
'binary' => array(
b"binary",
(binary)"binary"),
// object data
/*8*/
'object' => array(
new classA()),
// undefined data
/*9*/
'undefined' => array(
@$undefined_var),
// unset data
/*10*/
'unset' => array(
@$unset_var),
);
// loop through each element of $inputs to check the behavior of array_diff_assoc
$iterator = 1;
foreach($inputs as $key => $input) {
echo "\n-- Iteration $iterator --\n";
var_dump( array_diff_assoc($input, $array));
$iterator++;
};
echo "Done";
?>
@@ -0,0 +1,91 @@
*** Testing array_diff_assoc() : usage variations ***
-- Iteration 1 --
array(4) {
[0]=>
int(0)
[1]=>
int(1)
[2]=>
int(12345)
[3]=>
int(-2345)
}
-- Iteration 2 --
array(5) {
[0]=>
float(10.5)
[1]=>
float(-10.5)
[2]=>
float(123456789000)
[3]=>
float(1.23456789E-9)
[4]=>
float(0.5)
}
-- Iteration 3 --
array(2) {
[0]=>
NULL
[1]=>
NULL
}
-- Iteration 4 --
array(3) {
[1]=>
bool(false)
[2]=>
bool(true)
[3]=>
bool(false)
}
-- Iteration 5 --
array(2) {
[0]=>
string(0) ""
[1]=>
string(0) ""
}
-- Iteration 6 --
array(3) {
[0]=>
string(6) "string"
[1]=>
string(6) "string"
[2]=>
string(11) "hello world"
}
-- Iteration 7 --
array(2) {
[0]=>
string(6) "binary"
[1]=>
string(6) "binary"
}
-- Iteration 8 --
array(1) {
[0]=>
object(classA)#%d (0) {
}
}
-- Iteration 9 --
array(1) {
[0]=>
NULL
}
-- Iteration 10 --
array(1) {
[0]=>
NULL
}
Done
@@ -0,0 +1,99 @@
<?php
/* Prototype : array array_diff_assoc(array $arr1, array $arr2 [, array ...])
* Description: Returns the entries of arr1 that have values which are not present
* in any of the others arguments but do additional checks whether the keys are equal
* Source code: ext/standard/array.c
*/
/*
* Test how array_diff_assoc() compares arrays containing different data types
* as keys
*/
echo "\n*** Testing array_diff_assoc() : usage variations ***\n";
$array = array(1, 2, 3);
//get an unset variable
$unset_var = 10;
unset ($unset_var);
// heredoc string
$heredoc = <<<EOT
hello world
EOT;
//Different data types as keys to be passed to $arr1 argument
$inputs = array(
// int data
/*1*/
'int' => array(
0 => 'zero',
1 => 'one',
12345 => 'positive',
-2345 => 'negative'),
// float data
/*2*/
'float' => array(
10.5 => 'float 1',
-10.5 => 'float 2',
.5 => 'float 3'),
// null data
/*3*/
'null' => array(
NULL => 'null 1',
null => 'null 2'),
// boolean data
/*4*/
'bool' => array(
true => 'boolt',
false => 'boolf',
TRUE => 'boolT',
FALSE => 'boolF'),
// empty data
/*5*/
'empty' => array(
"" => 'emptyd',
'' => 'emptys'),
// string data
/*6*/
'string' => array(
"string" => 'stringd',
'string' => 'strings',
$heredoc => 'stringh'),
// binary data
/*7*/
'binary' => array(
b"binary1" => 'binary 1',
(binary)"binary2" => 'binary 2'),
// undefined data
/*8*/
'undefined' => array(
@$undefined_var => 'undefined'),
// unset data
/*9*/
'unset' => array(
@$unset_var => 'unset'),
);
// loop through each element of $inputs to check the behavior of array_diff_assoc
$iterator = 1;
foreach($inputs as $key => $input) {
echo "\n-- Iteration $iterator --\n";
var_dump( array_diff_assoc($input, $array));
$iterator++;
};
echo "Done";
?>
@@ -0,0 +1,72 @@
*** Testing array_diff_assoc() : usage variations ***
-- Iteration 1 --
array(4) {
[0]=>
string(4) "zero"
[1]=>
string(3) "one"
[12345]=>
string(8) "positive"
[-2345]=>
string(8) "negative"
}
-- Iteration 2 --
array(3) {
[10]=>
string(7) "float 1"
[-10]=>
string(7) "float 2"
[0]=>
string(7) "float 3"
}
-- Iteration 3 --
array(1) {
[""]=>
string(6) "null 2"
}
-- Iteration 4 --
array(2) {
[1]=>
string(5) "boolT"
[0]=>
string(5) "boolF"
}
-- Iteration 5 --
array(1) {
[""]=>
string(6) "emptys"
}
-- Iteration 6 --
array(2) {
["string"]=>
string(7) "strings"
["hello world"]=>
string(7) "stringh"
}
-- Iteration 7 --
array(2) {
["binary1"]=>
string(8) "binary 1"
["binary2"]=>
string(8) "binary 2"
}
-- Iteration 8 --
array(1) {
[""]=>
string(9) "undefined"
}
-- Iteration 9 --
array(1) {
[""]=>
string(5) "unset"
}
Done
@@ -0,0 +1,74 @@
<?php
/* Prototype : array array_diff_assoc(array $arr1, array $arr2 [, array ...])
* Description: Returns the entries of $arr1 that have values which are not
* present in any of the others arguments but do additional checks whether the keys are equal
* Source code: ext/standard/array.c
*/
/*
* Test how array_diff_assoc behaves
* 1. When comparing an array that has similar elements
* but has been created in a different order
* 2. When doing a strict comparison of string representation
*/
echo "*** Testing array_diff_assoc() : usage variations ***\n";
$array = array ('zero',
1 => 1,
'two' => 2.00000000000001);
$inputs = array (
//default keys => string values
/*1*/ array('2.00000000000001', '1', 'zero', 'a'),
//numeric keys => string values
/*2*/ array(2 => '2.00000000000001',
1 => '1',
0 => 'zero',
3 => 'a'),
//string keys => string values
/*3*/ array('2' => '2.00000000000001',
'1' => '1',
'0' => 'zero',
'3' => 'a') ,
//default keys => numeric values
/*4*/ array(2, 1, 0),
//numeric keys => numeric values
/*5*/ array(2 => 2,
1 => 1,
0 => 0),
//string keys => numeric values
/*6*/ array('two' => 2,
'1' => 1,
'0' => 0),
//defualt keys => float values
/*7*/ array(2.00000000000001, 1.00, 0.01E-9),
//numeric keys => float values
/*8*/ array(2 => 2.00000000000001,
1 => 1.00,
0 => 0.01E-9),
//string keys => float values
/*9*/ array ('two' => 2.00000000000001,
'1' => 1.00,
'0' =>0.01E-9)
);
// loop through each element of $inputs to check the behavior of array_diff_assoc
$iterator = 1;
foreach($inputs as $input) {
echo "\n-- Iteration $iterator --\n";
var_dump(array_diff_assoc($array, $input));
var_dump(array_diff_assoc($input, $array));
$iterator++;
};
echo "Done";
?>
@@ -0,0 +1,118 @@
*** Testing array_diff_assoc() : usage variations ***
-- Iteration 1 --
array(2) {
[0]=>
string(4) "zero"
["two"]=>
float(2)
}
array(3) {
[0]=>
string(16) "2.00000000000001"
[2]=>
string(4) "zero"
[3]=>
string(1) "a"
}
-- Iteration 2 --
array(1) {
["two"]=>
float(2)
}
array(2) {
[2]=>
string(16) "2.00000000000001"
[3]=>
string(1) "a"
}
-- Iteration 3 --
array(1) {
["two"]=>
float(2)
}
array(2) {
[2]=>
string(16) "2.00000000000001"
[3]=>
string(1) "a"
}
-- Iteration 4 --
array(2) {
[0]=>
string(4) "zero"
["two"]=>
float(2)
}
array(2) {
[0]=>
int(2)
[2]=>
int(0)
}
-- Iteration 5 --
array(2) {
[0]=>
string(4) "zero"
["two"]=>
float(2)
}
array(2) {
[2]=>
int(2)
[0]=>
int(0)
}
-- Iteration 6 --
array(1) {
[0]=>
string(4) "zero"
}
array(1) {
[0]=>
int(0)
}
-- Iteration 7 --
array(2) {
[0]=>
string(4) "zero"
["two"]=>
float(2)
}
array(2) {
[0]=>
float(2)
[2]=>
float(1.0E-11)
}
-- Iteration 8 --
array(2) {
[0]=>
string(4) "zero"
["two"]=>
float(2)
}
array(2) {
[2]=>
float(2)
[0]=>
float(1.0E-11)
}
-- Iteration 9 --
array(1) {
[0]=>
string(4) "zero"
}
array(1) {
[0]=>
float(1.0E-11)
}
Done
@@ -0,0 +1,45 @@
<?php
/* Prototype : array array_diff_assoc(array $arr1, array $arr2 [, array ...])
* Description: Returns the entries of $arr1 that have values which are not
* present in any of the others arguments but do additional checks whether the keys are equal
* Source code: ext/standard/array.c
*/
/*
* Tests how array_diff_assoc compares
* 1. Referenced variables
* 2. Arrays that have been referenced to each other
*/
echo "*** Testing array_diff_assoc() : usage variations ***\n";
$a = 'a';
$arr1 = array('a', 'b', 'c', $a);
$arr2 = array('a' => 1, 'b' => 2, 'c' => 3, &$a);
echo "-- Results when \$a = $a: --\n";
var_dump(array_diff_assoc($arr1, $arr2));
var_dump(array_diff_assoc($arr2, $arr1));
$a = 4;
echo "-- Results when \$a has been changed to $a: --\n";
var_dump(array_diff_assoc($arr1, $arr2));
var_dump(array_diff_assoc($arr2, $arr1));
$arr2 = &$arr1;
echo "-- Results when \$arr2 is referenced to \$arr1 --\n";
var_dump(array_diff_assoc($arr1, $arr2));
var_dump(array_diff_assoc($arr2, $arr1));
$arr1 = array('zero' => 'x', 'one' => 'y', 'two' => 'z');
echo "-- Results when \$arr1 is changed --\n";
var_dump(array_diff_assoc($arr1, $arr2));
var_dump(array_diff_assoc($arr2, $arr1));
echo "Done";
?>
@@ -0,0 +1,50 @@
*** Testing array_diff_assoc() : usage variations ***
-- Results when $a = a: --
array(3) {
[1]=>
string(1) "b"
[2]=>
string(1) "c"
[3]=>
string(1) "a"
}
array(3) {
["a"]=>
int(1)
["b"]=>
int(2)
["c"]=>
int(3)
}
-- Results when $a has been changed to 4: --
array(4) {
[0]=>
string(1) "a"
[1]=>
string(1) "b"
[2]=>
string(1) "c"
[3]=>
string(1) "a"
}
array(4) {
["a"]=>
int(1)
["b"]=>
int(2)
["c"]=>
int(3)
[0]=>
&int(4)
}
-- Results when $arr2 is referenced to $arr1 --
array(0) {
}
array(0) {
}
-- Results when $arr1 is changed --
array(0) {
}
array(0) {
}
Done
@@ -0,0 +1,61 @@
<?php
$a = array(1, 6, 2, -20, 15, 1200, -2500);
$b = array(0, 7, 2, -20, 11, 1100, -2500);
$c = array(0, 6, 2, -20, 19, 1000, -2500);
$d = array(3, 8,-2, -20, 14, 900, -2600);
$a_f = array_flip($a);
$b_f = array_flip($b);
$c_f = array_flip($c);
$d_f = array_flip($d);
$i = 1;
/* give nicer values */
foreach ($a_f as $k=> &$a_f_el) { $a_f_el =$k*2;}
foreach ($b_f as $k=> &$b_f_el) { $b_f_el =$k*2;}
foreach ($c_f as $k=> &$c_f_el) { $c_f_el =$k*2;}
foreach ($d_f as $k=> &$d_f_el) { $d_f_el =$k*2;}
echo "------ Test $i --------\n";$i++;// 1
var_dump(array_diff_key($a_f, $b_f));// keys -> 1, 6, 15, 1200
var_dump(array_diff_ukey($a_f, $b_f, "comp_func"));// 1, 6, 15, 1200
echo "------ Test $i --------\n";$i++;// 2
var_dump(array_diff_key($a_f, $c_f));// keys -> 1, 15, 1200
var_dump(array_diff_ukey($a_f, $c_f, "comp_func"));// 1, 15, 1200
echo "------ Test $i --------\n";$i++;// 3
var_dump(array_diff_key($a_f, $d_f));// 1, 6, 2, 15, 1200, -2500
var_dump(array_diff_ukey($a_f, $d_f, "comp_func"));// 1, 6, 2, 15, 1200, -2500
echo "------ Test $i --------\n";$i++;// 4
var_dump(array_diff_key($a_f, $b_f, $c_f));// 1, 15, 1200
var_dump(array_diff_ukey($a_f, $b_f, $c_f, "comp_func"));// 1, 15, 1200
echo "------ Test $i --------\n";$i++;// 5
var_dump(array_diff_key($a_f, $b_f, $d_f));// 1, 6, 15, 1200
var_dump(array_diff_ukey($a_f, $b_f, $d_f, "comp_func"));// 1, 6, 15, 1200
echo "------ Test $i --------\n";$i++;// 6
var_dump(array_diff_key($a_f, $b_f, $c_f, $d_f));// 1, 15, 1200
var_dump(array_diff_ukey($a_f, $b_f, $c_f, $d_f, "comp_func"));//1, 15, 1200
echo "------ Test $i --------\n";$i++;// 7
var_dump(array_diff_key($b_f, $c_f));// 7, 11, 1100
var_dump(array_diff_ukey($b_f, $c_f, "comp_func"));//7, 11, 1100
echo "------ Test $i --------\n";$i++;// 8
var_dump(array_diff_key($b_f, $d_f));//0, 7, 2, 11, 1100, -2500
var_dump(array_diff_ukey($b_f, $d_f, "comp_func"));//0, 7, 2, 11, 1100, -2500
echo "------ Test $i --------\n";$i++;// 9
var_dump(array_diff_key($b_f, $c_f, $d_f));// 7, 11, 1100
var_dump(array_diff_ukey($b_f, $c_f, $d_f, "comp_func"));// 7, 11, 1000
function comp_func($a, $b) {
if ($a === $b) return 0;
return ($a > $b)? 1:-1;
}
?>
@@ -0,0 +1,185 @@
------ Test 1 --------
array(4) {
[1]=>
int(2)
[6]=>
int(12)
[15]=>
int(30)
[1200]=>
int(2400)
}
array(4) {
[1]=>
int(2)
[6]=>
int(12)
[15]=>
int(30)
[1200]=>
int(2400)
}
------ Test 2 --------
array(3) {
[1]=>
int(2)
[15]=>
int(30)
[1200]=>
int(2400)
}
array(3) {
[1]=>
int(2)
[15]=>
int(30)
[1200]=>
int(2400)
}
------ Test 3 --------
array(6) {
[1]=>
int(2)
[6]=>
int(12)
[2]=>
int(4)
[15]=>
int(30)
[1200]=>
int(2400)
[-2500]=>
&int(-5000)
}
array(6) {
[1]=>
int(2)
[6]=>
int(12)
[2]=>
int(4)
[15]=>
int(30)
[1200]=>
int(2400)
[-2500]=>
&int(-5000)
}
------ Test 4 --------
array(3) {
[1]=>
int(2)
[15]=>
int(30)
[1200]=>
int(2400)
}
array(3) {
[1]=>
int(2)
[15]=>
int(30)
[1200]=>
int(2400)
}
------ Test 5 --------
array(4) {
[1]=>
int(2)
[6]=>
int(12)
[15]=>
int(30)
[1200]=>
int(2400)
}
array(4) {
[1]=>
int(2)
[6]=>
int(12)
[15]=>
int(30)
[1200]=>
int(2400)
}
------ Test 6 --------
array(3) {
[1]=>
int(2)
[15]=>
int(30)
[1200]=>
int(2400)
}
array(3) {
[1]=>
int(2)
[15]=>
int(30)
[1200]=>
int(2400)
}
------ Test 7 --------
array(3) {
[7]=>
int(14)
[11]=>
int(22)
[1100]=>
int(2200)
}
array(3) {
[7]=>
int(14)
[11]=>
int(22)
[1100]=>
int(2200)
}
------ Test 8 --------
array(6) {
[0]=>
int(0)
[7]=>
int(14)
[2]=>
int(4)
[11]=>
int(22)
[1100]=>
int(2200)
[-2500]=>
&int(-5000)
}
array(6) {
[0]=>
int(0)
[7]=>
int(14)
[2]=>
int(4)
[11]=>
int(22)
[1100]=>
int(2200)
[-2500]=>
&int(-5000)
}
------ Test 9 --------
array(3) {
[7]=>
int(14)
[11]=>
int(22)
[1100]=>
int(2200)
}
array(3) {
[7]=>
int(14)
[11]=>
int(22)
[1100]=>
int(2200)
}
@@ -0,0 +1,38 @@
<?php
/* Prototype : array array_diff_uassoc(array arr1, array arr2 [, array ...], callback key_comp_func)
* Description: Computes the difference of arrays with additional index check which is performed by a
* user supplied callback function
* Source code: ext/standard/array.c
*/
echo "*** Testing array_diff_uassoc() : error conditions ***\n";
//Initialize array
$array1 = array("a" => "green", "b" => "brown", "c" => "blue", "red");
$array2 = array("a" => "green", "yellow", "red");
$array3 = array("a" => "green", "red");
$array4 = array();
$extra_arg = array(1, 2, 3, 4);
function key_compare_func($a, $b)
{
if ($a === $b) {
return 0;
}
return ($a > $b)? 1:-1;
}
//Test array_diff_uassoc with one more than the expected number of arguments
echo "\n-- Testing array_diff_uassoc() function with more than expected no. of arguments --\n";
var_dump( array_diff_uassoc($array1, $array2, "key_compare_func", $extra_arg) );
var_dump( array_diff_uassoc($array1, $array2, $array3, $array4, "key_compare_func", $extra_arg) );
// Testing array_diff_uassoc with one less than the expected number of arguments
echo "\n-- Testing array_diff_uassoc() function with less than expected no. of arguments --\n";
var_dump( array_diff_uassoc($array1, $array2) );
// Testing array_diff_uassoc with no arguments
echo "\n-- Testing array_diff_uassoc() function with no arguments --\n";
var_dump( array_diff_uassoc() );
?>
===DONE===
@@ -0,0 +1,16 @@
*** Testing array_diff_uassoc() : error conditions ***
-- Testing array_diff_uassoc() function with more than expected no. of arguments --
HipHop Warning: %a
NULL
HipHop Warning: %a
NULL
-- Testing array_diff_uassoc() function with less than expected no. of arguments --
HipHop Warning: %a
NULL
-- Testing array_diff_uassoc() function with no arguments --
HipHop Warning: %a
NULL
===DONE===

Alguns arquivos não foram exibidos porque demasiados arquivos foram alterados neste diff Mostrar Mais