2008-01-24 14:50:18 +00:00
|
|
|
--TEST--
|
|
|
|
Test compact() function : usage variations - arrays containing references.
|
|
|
|
--FILE--
|
|
|
|
<?php
|
|
|
|
/* Prototype : proto array compact(mixed var_names [, mixed ...])
|
|
|
|
* Description: Creates a hash containing variables and their values
|
|
|
|
* Source code: ext/standard/array.c
|
|
|
|
* Alias to functions:
|
|
|
|
*/
|
|
|
|
|
|
|
|
/*
|
|
|
|
* compact variations - arrays with references
|
|
|
|
*/
|
|
|
|
|
|
|
|
echo "*** Testing compact() : usage variations - arrays containg references ***\n";
|
|
|
|
|
|
|
|
$a=1;
|
|
|
|
$b=2;
|
|
|
|
$c=3;
|
|
|
|
$string="c";
|
|
|
|
$arr1=array ("a",&$arr1);
|
|
|
|
$arr2=array ("a",array(array(array("b"))));
|
|
|
|
$arr2[1][0][0][]=&$arr2;
|
|
|
|
$arr2[1][0][0][]=&$arr2[1];
|
|
|
|
$arr3=array(&$string);
|
|
|
|
|
|
|
|
var_dump (compact ($arr1));
|
|
|
|
var_dump (compact ($arr2));
|
|
|
|
var_dump (compact ($arr3));
|
|
|
|
echo "Done";
|
|
|
|
?>
|
2008-01-29 08:49:11 +00:00
|
|
|
--EXPECTF--
|
2008-01-24 14:50:18 +00:00
|
|
|
*** Testing compact() : usage variations - arrays containg references ***
|
2008-01-29 08:49:11 +00:00
|
|
|
|
|
|
|
Warning: compact(): recursion detected in %s on line %d
|
2008-01-24 14:50:18 +00:00
|
|
|
array(1) {
|
|
|
|
[u"a"]=>
|
|
|
|
int(1)
|
|
|
|
}
|
2008-01-29 08:49:11 +00:00
|
|
|
|
|
|
|
Warning: compact(): recursion detected in %s on line %d
|
|
|
|
|
|
|
|
Warning: compact(): recursion detected in %s on line %d
|
|
|
|
|
|
|
|
Warning: compact(): recursion detected in %s on line %d
|
|
|
|
|
|
|
|
Warning: compact(): recursion detected in %s on line %d
|
2008-01-24 14:50:18 +00:00
|
|
|
array(2) {
|
|
|
|
[u"a"]=>
|
|
|
|
int(1)
|
|
|
|
[u"b"]=>
|
|
|
|
int(2)
|
|
|
|
}
|
|
|
|
array(1) {
|
|
|
|
[u"c"]=>
|
|
|
|
int(3)
|
|
|
|
}
|
2009-01-05 17:53:53 +00:00
|
|
|
Done
|