derick Mon Oct 17 11:03:12 2005 EDT Modified files: /php-src/ext/standard var.c /php-src/ext/standard/tests/array var_export3.phpt 007.phpt array_intersect_1.phpt var_export.phpt Log: - MF51: Fixed bug #29361 (var_export() producing invalid code).
http://cvs.php.net/diff.php/php-src/ext/standard/var.c?r1=1.214&r2=1.215&ty=u Index: php-src/ext/standard/var.c diff -u php-src/ext/standard/var.c:1.214 php-src/ext/standard/var.c:1.215 --- php-src/ext/standard/var.c:1.214 Mon Sep 12 03:14:54 2005 +++ php-src/ext/standard/var.c Mon Oct 17 11:03:04 2005 @@ -18,7 +18,7 @@ +----------------------------------------------------------------------+ */ -/* $Id: var.c,v 1.214 2005/09/12 07:14:54 dmitry Exp $ */ +/* $Id: var.c,v 1.215 2005/10/17 15:03:04 derick Exp $ */ @@ -497,18 +497,9 @@ if (hash_key->nKeyLength != 0) { php_printf("%*c", level + 1, ' '); zend_u_unmangle_property_name(hash_key->type, hash_key->u.string, &class_name, &prop_name); - if (class_name) { - if (class_name[0] == '*') { - php_printf("protected"); - } else { - php_printf("private"); - } - } else { - php_printf("public"); - } - php_printf(" $%R = ", hash_key->type, prop_name); + php_printf(" '%R' => ", hash_key->type, prop_name); php_var_export(zv, level + 2 TSRMLS_CC); - PUTS (";\n"); + PUTS (",\n"); } return 0; } @@ -564,7 +555,7 @@ php_printf("\n%*c", level - 1, ' '); } Z_OBJ_HANDLER(**struc, get_class_name)(*struc, &class_name, &class_name_len, 0 TSRMLS_CC); - php_printf ("class %v {\n", class_name); + php_printf ("%v::__set_state(array(\n", class_name); efree(class_name); if (myht) { zend_hash_apply_with_arguments(myht, (apply_func_args_t) php_object_element_export, 1, level); @@ -572,7 +563,7 @@ if (level > 1) { php_printf("%*c", level - 1, ' '); } - PUTS("}"); + php_printf ("))"); break; default: PUTS ("NULL"); http://cvs.php.net/diff.php/php-src/ext/standard/tests/array/var_export3.phpt?r1=1.1&r2=1.2&ty=u Index: php-src/ext/standard/tests/array/var_export3.phpt diff -u /dev/null php-src/ext/standard/tests/array/var_export3.phpt:1.2 --- /dev/null Mon Oct 17 11:03:12 2005 +++ php-src/ext/standard/tests/array/var_export3.phpt Mon Oct 17 11:03:12 2005 @@ -0,0 +1,24 @@ +--TEST-- +var_export() and classes +--FILE-- +<?php +class kake { + public $mann; + protected $kvinne; + + function __construct() + { + $this->mann = 42; + $this->kvinne = 43; + } +} + +$kake = new kake; + +var_export($kake); +?> +--EXPECT-- +kake::__set_state(array( + 'mann' => 42, + 'kvinne' => 43, +)) http://cvs.php.net/diff.php/php-src/ext/standard/tests/array/007.phpt?r1=1.11&r2=1.12&ty=u Index: php-src/ext/standard/tests/array/007.phpt diff -u php-src/ext/standard/tests/array/007.phpt:1.11 php-src/ext/standard/tests/array/007.phpt:1.12 --- php-src/ext/standard/tests/array/007.phpt:1.11 Mon Aug 15 10:37:55 2005 +++ php-src/ext/standard/tests/array/007.phpt Mon Oct 17 11:03:12 2005 @@ -111,7 +111,7 @@ echo '$a='.var_export($a,TRUE).";\n"; echo '$b='.var_export($b,TRUE).";\n"; echo 'var_dump(array_diff_assoc($a, $b));'."\n"; -var_dump(@array_diff_assoc($a, $b)); +var_dump(array_diff_assoc($a, $b)); echo '$a='.var_export($a,TRUE).";\n"; @@ -254,57 +254,57 @@ -=-=-=-=-=-=-=-=- New functionality from 5.0.0 -=-=-=-=-=-=-=- $a=array ( '0.1' => - class cr { - private $priv_member = 9; - public $public_member = 9; - }, + cr::__set_state(array( + 'priv_member' => 9, + 'public_member' => 9, + )), '0.5' => - class cr { - private $priv_member = 12; - public $public_member = 12; - }, + cr::__set_state(array( + 'priv_member' => 12, + 'public_member' => 12, + )), 0 => - class cr { - private $priv_member = 23; - public $public_member = 23; - }, + cr::__set_state(array( + 'priv_member' => 23, + 'public_member' => 23, + )), 1 => - class cr { - private $priv_member = 4; - public $public_member = 4; - }, + cr::__set_state(array( + 'priv_member' => 4, + 'public_member' => 4, + )), 2 => - class cr { - private $priv_member = -15; - public $public_member = -15; - }, + cr::__set_state(array( + 'priv_member' => -15, + 'public_member' => -15, + )), ); $b=array ( '0.2' => - class cr { - private $priv_member = 9; - public $public_member = 9; - }, + cr::__set_state(array( + 'priv_member' => 9, + 'public_member' => 9, + )), '0.5' => - class cr { - private $priv_member = 22; - public $public_member = 22; - }, + cr::__set_state(array( + 'priv_member' => 22, + 'public_member' => 22, + )), 0 => - class cr { - private $priv_member = 3; - public $public_member = 3; - }, + cr::__set_state(array( + 'priv_member' => 3, + 'public_member' => 3, + )), 1 => - class cr { - private $priv_member = 4; - public $public_member = 4; - }, + cr::__set_state(array( + 'priv_member' => 4, + 'public_member' => 4, + )), 2 => - class cr { - private $priv_member = -15; - public $public_member = -15; - }, + cr::__set_state(array( + 'priv_member' => -15, + 'public_member' => -15, + )), ); var_dump(array_udiff_uassoc($a, $b, "comp_func_cr", "comp_func")); array(3) { @@ -332,57 +332,57 @@ } $a=array ( '0.1' => - class cr { - private $priv_member = 9; - public $public_member = 9; - }, + cr::__set_state(array( + 'priv_member' => 9, + 'public_member' => 9, + )), '0.5' => - class cr { - private $priv_member = 12; - public $public_member = 12; - }, + cr::__set_state(array( + 'priv_member' => 12, + 'public_member' => 12, + )), 0 => - class cr { - private $priv_member = 23; - public $public_member = 23; - }, + cr::__set_state(array( + 'priv_member' => 23, + 'public_member' => 23, + )), 1 => - class cr { - private $priv_member = 4; - public $public_member = 4; - }, + cr::__set_state(array( + 'priv_member' => 4, + 'public_member' => 4, + )), 2 => - class cr { - private $priv_member = -15; - public $public_member = -15; - }, + cr::__set_state(array( + 'priv_member' => -15, + 'public_member' => -15, + )), ); $b=array ( '0.2' => - class cr { - private $priv_member = 9; - public $public_member = 9; - }, + cr::__set_state(array( + 'priv_member' => 9, + 'public_member' => 9, + )), '0.5' => - class cr { - private $priv_member = 22; - public $public_member = 22; - }, + cr::__set_state(array( + 'priv_member' => 22, + 'public_member' => 22, + )), 0 => - class cr { - private $priv_member = 3; - public $public_member = 3; - }, + cr::__set_state(array( + 'priv_member' => 3, + 'public_member' => 3, + )), 1 => - class cr { - private $priv_member = 4; - public $public_member = 4; - }, + cr::__set_state(array( + 'priv_member' => 4, + 'public_member' => 4, + )), 2 => - class cr { - private $priv_member = -15; - public $public_member = -15; - }, + 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) { @@ -410,57 +410,57 @@ } $a=array ( '0.1' => - class cr { - private $priv_member = 9; - public $public_member = 9; - }, + cr::__set_state(array( + 'priv_member' => 9, + 'public_member' => 9, + )), '0.5' => - class cr { - private $priv_member = 12; - public $public_member = 12; - }, + cr::__set_state(array( + 'priv_member' => 12, + 'public_member' => 12, + )), 0 => - class cr { - private $priv_member = 23; - public $public_member = 23; - }, + cr::__set_state(array( + 'priv_member' => 23, + 'public_member' => 23, + )), 1 => - class cr { - private $priv_member = 4; - public $public_member = 4; - }, + cr::__set_state(array( + 'priv_member' => 4, + 'public_member' => 4, + )), 2 => - class cr { - private $priv_member = -15; - public $public_member = -15; - }, + cr::__set_state(array( + 'priv_member' => -15, + 'public_member' => -15, + )), ); $b=array ( '0.2' => - class cr { - private $priv_member = 9; - public $public_member = 9; - }, + cr::__set_state(array( + 'priv_member' => 9, + 'public_member' => 9, + )), '0.5' => - class cr { - private $priv_member = 22; - public $public_member = 22; - }, + cr::__set_state(array( + 'priv_member' => 22, + 'public_member' => 22, + )), 0 => - class cr { - private $priv_member = 3; - public $public_member = 3; - }, + cr::__set_state(array( + 'priv_member' => 3, + 'public_member' => 3, + )), 1 => - class cr { - private $priv_member = 4; - public $public_member = 4; - }, + cr::__set_state(array( + 'priv_member' => 4, + 'public_member' => 4, + )), 2 => - class cr { - private $priv_member = -15; - public $public_member = -15; - }, + cr::__set_state(array( + 'priv_member' => -15, + 'public_member' => -15, + )), ); var_dump(array_diff_assoc($a, $b)); array(5) { @@ -502,57 +502,57 @@ } $a=array ( '0.1' => - class cr { - private $priv_member = 9; - public $public_member = 9; - }, + cr::__set_state(array( + 'priv_member' => 9, + 'public_member' => 9, + )), '0.5' => - class cr { - private $priv_member = 12; - public $public_member = 12; - }, + cr::__set_state(array( + 'priv_member' => 12, + 'public_member' => 12, + )), 0 => - class cr { - private $priv_member = 23; - public $public_member = 23; - }, + cr::__set_state(array( + 'priv_member' => 23, + 'public_member' => 23, + )), 1 => - class cr { - private $priv_member = 4; - public $public_member = 4; - }, + cr::__set_state(array( + 'priv_member' => 4, + 'public_member' => 4, + )), 2 => - class cr { - private $priv_member = -15; - public $public_member = -15; - }, + cr::__set_state(array( + 'priv_member' => -15, + 'public_member' => -15, + )), ); $b=array ( '0.2' => - class cr { - private $priv_member = 9; - public $public_member = 9; - }, + cr::__set_state(array( + 'priv_member' => 9, + 'public_member' => 9, + )), '0.5' => - class cr { - private $priv_member = 22; - public $public_member = 22; - }, + cr::__set_state(array( + 'priv_member' => 22, + 'public_member' => 22, + )), 0 => - class cr { - private $priv_member = 3; - public $public_member = 3; - }, + cr::__set_state(array( + 'priv_member' => 3, + 'public_member' => 3, + )), 1 => - class cr { - private $priv_member = 4; - public $public_member = 4; - }, + cr::__set_state(array( + 'priv_member' => 4, + 'public_member' => 4, + )), 2 => - class cr { - private $priv_member = -15; - public $public_member = -15; - }, + cr::__set_state(array( + 'priv_member' => -15, + 'public_member' => -15, + )), ); var_dump(array_udiff($a, $b, "comp_func_cr")); array(2) { @@ -573,57 +573,57 @@ } $a=array ( '0.1' => - class cr { - private $priv_member = 9; - public $public_member = 9; - }, + cr::__set_state(array( + 'priv_member' => 9, + 'public_member' => 9, + )), '0.5' => - class cr { - private $priv_member = 12; - public $public_member = 12; - }, + cr::__set_state(array( + 'priv_member' => 12, + 'public_member' => 12, + )), 0 => - class cr { - private $priv_member = 23; - public $public_member = 23; - }, + cr::__set_state(array( + 'priv_member' => 23, + 'public_member' => 23, + )), 1 => - class cr { - private $priv_member = 4; - public $public_member = 4; - }, + cr::__set_state(array( + 'priv_member' => 4, + 'public_member' => 4, + )), 2 => - class cr { - private $priv_member = -15; - public $public_member = -15; - }, + cr::__set_state(array( + 'priv_member' => -15, + 'public_member' => -15, + )), ); $b=array ( '0.2' => - class cr { - private $priv_member = 9; - public $public_member = 9; - }, + cr::__set_state(array( + 'priv_member' => 9, + 'public_member' => 9, + )), '0.5' => - class cr { - private $priv_member = 22; - public $public_member = 22; - }, + cr::__set_state(array( + 'priv_member' => 22, + 'public_member' => 22, + )), 0 => - class cr { - private $priv_member = 3; - public $public_member = 3; - }, + cr::__set_state(array( + 'priv_member' => 3, + 'public_member' => 3, + )), 1 => - class cr { - private $priv_member = 4; - public $public_member = 4; - }, + cr::__set_state(array( + 'priv_member' => 4, + 'public_member' => 4, + )), 2 => - class cr { - private $priv_member = -15; - public $public_member = -15; - }, + cr::__set_state(array( + 'priv_member' => -15, + 'public_member' => -15, + )), ); var_dump(array_udiff_assoc($a, $b, "comp_func_cr")); array(3) { http://cvs.php.net/diff.php/php-src/ext/standard/tests/array/array_intersect_1.phpt?r1=1.7&r2=1.8&ty=u Index: php-src/ext/standard/tests/array/array_intersect_1.phpt diff -u php-src/ext/standard/tests/array/array_intersect_1.phpt:1.7 php-src/ext/standard/tests/array/array_intersect_1.phpt:1.8 --- php-src/ext/standard/tests/array/array_intersect_1.phpt:1.7 Mon Aug 15 10:37:55 2005 +++ php-src/ext/standard/tests/array/array_intersect_1.phpt Mon Oct 17 11:03:12 2005 @@ -35,7 +35,7 @@ echo '$a='.var_export($a,TRUE).";\n"; echo '$b='.var_export($b,TRUE).";\n"; echo 'var_dump(array_intersect($a, $b);'."\n"; -var_dump(@array_intersect($a, $b)); +var_dump(array_intersect($a, $b)); echo "end ------------ array_intersect() ----------------------------\n"; /* array_uintersect() */ @@ -51,7 +51,7 @@ echo '$a='.var_export($a,TRUE).";\n"; echo '$b='.var_export($b,TRUE).";\n"; echo 'var_dump(array_intersect_assoc($a, $b));'."\n"; -var_dump(@array_intersect_assoc($a, $b)); +var_dump(array_intersect_assoc($a, $b)); echo "end ------------ array_intersect_assoc() ----------------------\n"; /* array_uintersect_assoc() */ @@ -67,7 +67,7 @@ echo '$a='.var_export($a,TRUE).";\n"; echo '$b='.var_export($b,TRUE).";\n"; echo 'var_dump(array_intersect_uassoc($a, $b, "comp_func"));'."\n"; -var_dump(@array_intersect_uassoc($a, $b, "comp_func")); +var_dump(array_intersect_uassoc($a, $b, "comp_func")); echo "end ------------ array_intersect_uassoc() ---------------------\n"; /* array_uintersect_uassoc() - with ordinary function */ @@ -90,57 +90,57 @@ begin ------------ array_intersect() ---------------------------- $a=array ( '0.1' => - class cr { - private $priv_member = 9; - public $public_member = 9; - }, - '0.5' => - class cr { - private $priv_member = 12; - public $public_member = 12; - }, - 0 => - class cr { - private $priv_member = 23; - public $public_member = 23; - }, - 1 => - class cr { - private $priv_member = 4; - public $public_member = 4; - }, - 2 => - class cr { - private $priv_member = -15; - public $public_member = -15; - }, + 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' => - class cr { - private $priv_member = 9; - public $public_member = 9; - }, - '0.5' => - class cr { - private $priv_member = 22; - public $public_member = 22; - }, - 0 => - class cr { - private $priv_member = 3; - public $public_member = 3; - }, - 1 => - class cr { - private $priv_member = 4; - public $public_member = 4; - }, - 2 => - class cr { - private $priv_member = -15; - public $public_member = -15; - }, + 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_intersect($a, $b); array(0) { @@ -149,57 +149,57 @@ begin ------------ array_uintersect() --------------------------- $a=array ( '0.1' => - class cr { - private $priv_member = 9; - public $public_member = 9; - }, - '0.5' => - class cr { - private $priv_member = 12; - public $public_member = 12; - }, - 0 => - class cr { - private $priv_member = 23; - public $public_member = 23; - }, - 1 => - class cr { - private $priv_member = 4; - public $public_member = 4; - }, - 2 => - class cr { - private $priv_member = -15; - public $public_member = -15; - }, + 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' => - class cr { - private $priv_member = 9; - public $public_member = 9; - }, - '0.5' => - class cr { - private $priv_member = 22; - public $public_member = 22; - }, - 0 => - class cr { - private $priv_member = 3; - public $public_member = 3; - }, - 1 => - class cr { - private $priv_member = 4; - public $public_member = 4; - }, - 2 => - class cr { - private $priv_member = -15; - public $public_member = -15; - }, + 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_uintersect($a, $b, "comp_func_cr")); array(3) { @@ -229,57 +229,57 @@ begin ------------ array_intersect_assoc() ---------------------- $a=array ( '0.1' => - class cr { - private $priv_member = 9; - public $public_member = 9; - }, - '0.5' => - class cr { - private $priv_member = 12; - public $public_member = 12; - }, - 0 => - class cr { - private $priv_member = 23; - public $public_member = 23; - }, - 1 => - class cr { - private $priv_member = 4; - public $public_member = 4; - }, - 2 => - class cr { - private $priv_member = -15; - public $public_member = -15; - }, + 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' => - class cr { - private $priv_member = 9; - public $public_member = 9; - }, - '0.5' => - class cr { - private $priv_member = 22; - public $public_member = 22; - }, - 0 => - class cr { - private $priv_member = 3; - public $public_member = 3; - }, - 1 => - class cr { - private $priv_member = 4; - public $public_member = 4; - }, - 2 => - class cr { - private $priv_member = -15; - public $public_member = -15; - }, + 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_intersect_assoc($a, $b)); array(0) { @@ -288,57 +288,57 @@ begin ------------ array_uintersect_assoc() --------------------- $a=array ( '0.1' => - class cr { - private $priv_member = 9; - public $public_member = 9; - }, - '0.5' => - class cr { - private $priv_member = 12; - public $public_member = 12; - }, - 0 => - class cr { - private $priv_member = 23; - public $public_member = 23; - }, - 1 => - class cr { - private $priv_member = 4; - public $public_member = 4; - }, - 2 => - class cr { - private $priv_member = -15; - public $public_member = -15; - }, + 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' => - class cr { - private $priv_member = 9; - public $public_member = 9; - }, - '0.5' => - class cr { - private $priv_member = 22; - public $public_member = 22; - }, - 0 => - class cr { - private $priv_member = 3; - public $public_member = 3; - }, - 1 => - class cr { - private $priv_member = 4; - public $public_member = 4; - }, - 2 => - class cr { - private $priv_member = -15; - public $public_member = -15; - }, + 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_uintersect_assoc($a, $b, "comp_func_cr")); array(2) { @@ -361,57 +361,57 @@ begin ------------ array_intersect_uassoc() --------------------- $a=array ( '0.1' => - class cr { - private $priv_member = 9; - public $public_member = 9; - }, - '0.5' => - class cr { - private $priv_member = 12; - public $public_member = 12; - }, - 0 => - class cr { - private $priv_member = 23; - public $public_member = 23; - }, - 1 => - class cr { - private $priv_member = 4; - public $public_member = 4; - }, - 2 => - class cr { - private $priv_member = -15; - public $public_member = -15; - }, + 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' => - class cr { - private $priv_member = 9; - public $public_member = 9; - }, - '0.5' => - class cr { - private $priv_member = 22; - public $public_member = 22; - }, - 0 => - class cr { - private $priv_member = 3; - public $public_member = 3; - }, - 1 => - class cr { - private $priv_member = 4; - public $public_member = 4; - }, - 2 => - class cr { - private $priv_member = -15; - public $public_member = -15; - }, + 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_intersect_uassoc($a, $b, "comp_func")); array(0) { @@ -420,57 +420,57 @@ begin ------------ array_uintersect_uassoc() with ordinary func - $a=array ( '0.1' => - class cr { - private $priv_member = 9; - public $public_member = 9; - }, - '0.5' => - class cr { - private $priv_member = 12; - public $public_member = 12; - }, - 0 => - class cr { - private $priv_member = 23; - public $public_member = 23; - }, - 1 => - class cr { - private $priv_member = 4; - public $public_member = 4; - }, - 2 => - class cr { - private $priv_member = -15; - public $public_member = -15; - }, + 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' => - class cr { - private $priv_member = 9; - public $public_member = 9; - }, - '0.5' => - class cr { - private $priv_member = 22; - public $public_member = 22; - }, - 0 => - class cr { - private $priv_member = 3; - public $public_member = 3; - }, - 1 => - class cr { - private $priv_member = 4; - public $public_member = 4; - }, - 2 => - class cr { - private $priv_member = -15; - public $public_member = -15; - }, + 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_uintersect_uassoc($a, $b, "comp_func_cr", "comp_func")); array(2) { @@ -493,57 +493,57 @@ begin ------------ array_uintersect_uassoc() with method -------- $a=array ( '0.1' => - class cr { - private $priv_member = 9; - public $public_member = 9; - }, - '0.5' => - class cr { - private $priv_member = 12; - public $public_member = 12; - }, - 0 => - class cr { - private $priv_member = 23; - public $public_member = 23; - }, - 1 => - class cr { - private $priv_member = 4; - public $public_member = 4; - }, - 2 => - class cr { - private $priv_member = -15; - public $public_member = -15; - }, + 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' => - class cr { - private $priv_member = 9; - public $public_member = 9; - }, - '0.5' => - class cr { - private $priv_member = 22; - public $public_member = 22; - }, - 0 => - class cr { - private $priv_member = 3; - public $public_member = 3; - }, - 1 => - class cr { - private $priv_member = 4; - public $public_member = 4; - }, - 2 => - class cr { - private $priv_member = -15; - public $public_member = -15; - }, + 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_uintersect_uassoc($a, $b, array("cr", "comp_func_cr"), "comp_func")); array(2) { @@ -567,57 +567,57 @@ begin ------------ array_intersect() ---------------------------- $a=array ( '0.1' => - class cr { - private $priv_member = 9; - public $public_member = 9; - }, - '0.5' => - class cr { - private $priv_member = 12; - public $public_member = 12; - }, - 0 => - class cr { - private $priv_member = 23; - public $public_member = 23; - }, - 1 => - class cr { - private $priv_member = 4; - public $public_member = 4; - }, - 2 => - class cr { - private $priv_member = -15; - public $public_member = -15; - }, + 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' => - class cr { - private $priv_member = 9; - public $public_member = 9; - }, - '0.5' => - class cr { - private $priv_member = 22; - public $public_member = 22; - }, - 0 => - class cr { - private $priv_member = 3; - public $public_member = 3; - }, - 1 => - class cr { - private $priv_member = 4; - public $public_member = 4; - }, - 2 => - class cr { - private $priv_member = -15; - public $public_member = -15; - }, + 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_intersect($a, $b); array(0) { @@ -626,57 +626,57 @@ begin ------------ array_uintersect() --------------------------- $a=array ( '0.1' => - class cr { - private $priv_member = 9; - public $public_member = 9; - }, - '0.5' => - class cr { - private $priv_member = 12; - public $public_member = 12; - }, - 0 => - class cr { - private $priv_member = 23; - public $public_member = 23; - }, - 1 => - class cr { - private $priv_member = 4; - public $public_member = 4; - }, - 2 => - class cr { - private $priv_member = -15; - public $public_member = -15; - }, + 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' => - class cr { - private $priv_member = 9; - public $public_member = 9; - }, - '0.5' => - class cr { - private $priv_member = 22; - public $public_member = 22; - }, - 0 => - class cr { - private $priv_member = 3; - public $public_member = 3; - }, - 1 => - class cr { - private $priv_member = 4; - public $public_member = 4; - }, - 2 => - class cr { - private $priv_member = -15; - public $public_member = -15; - }, + 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_uintersect($a, $b, "comp_func_cr")); array(3) { @@ -706,57 +706,57 @@ begin ------------ array_intersect_assoc() ---------------------- $a=array ( '0.1' => - class cr { - private $priv_member = 9; - public $public_member = 9; - }, - '0.5' => - class cr { - private $priv_member = 12; - public $public_member = 12; - }, - 0 => - class cr { - private $priv_member = 23; - public $public_member = 23; - }, - 1 => - class cr { - private $priv_member = 4; - public $public_member = 4; - }, - 2 => - class cr { - private $priv_member = -15; - public $public_member = -15; - }, + 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' => - class cr { - private $priv_member = 9; - public $public_member = 9; - }, - '0.5' => - class cr { - private $priv_member = 22; - public $public_member = 22; - }, - 0 => - class cr { - private $priv_member = 3; - public $public_member = 3; - }, - 1 => - class cr { - private $priv_member = 4; - public $public_member = 4; - }, - 2 => - class cr { - private $priv_member = -15; - public $public_member = -15; - }, + 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_intersect_assoc($a, $b)); array(0) { @@ -765,57 +765,57 @@ begin ------------ array_uintersect_assoc() --------------------- $a=array ( '0.1' => - class cr { - private $priv_member = 9; - public $public_member = 9; - }, - '0.5' => - class cr { - private $priv_member = 12; - public $public_member = 12; - }, - 0 => - class cr { - private $priv_member = 23; - public $public_member = 23; - }, - 1 => - class cr { - private $priv_member = 4; - public $public_member = 4; - }, - 2 => - class cr { - private $priv_member = -15; - public $public_member = -15; - }, + 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' => - class cr { - private $priv_member = 9; - public $public_member = 9; - }, - '0.5' => - class cr { - private $priv_member = 22; - public $public_member = 22; - }, - 0 => - class cr { - private $priv_member = 3; - public $public_member = 3; - }, - 1 => - class cr { - private $priv_member = 4; - public $public_member = 4; - }, - 2 => - class cr { - private $priv_member = -15; - public $public_member = -15; - }, + 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_uintersect_assoc($a, $b, "comp_func_cr")); array(2) { @@ -838,57 +838,57 @@ begin ------------ array_intersect_uassoc() --------------------- $a=array ( '0.1' => - class cr { - private $priv_member = 9; - public $public_member = 9; - }, - '0.5' => - class cr { - private $priv_member = 12; - public $public_member = 12; - }, - 0 => - class cr { - private $priv_member = 23; - public $public_member = 23; - }, - 1 => - class cr { - private $priv_member = 4; - public $public_member = 4; - }, - 2 => - class cr { - private $priv_member = -15; - public $public_member = -15; - }, + 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' => - class cr { - private $priv_member = 9; - public $public_member = 9; - }, - '0.5' => - class cr { - private $priv_member = 22; - public $public_member = 22; - }, - 0 => - class cr { - private $priv_member = 3; - public $public_member = 3; - }, - 1 => - class cr { - private $priv_member = 4; - public $public_member = 4; - }, - 2 => - class cr { - private $priv_member = -15; - public $public_member = -15; - }, + 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_intersect_uassoc($a, $b, "comp_func")); array(0) { @@ -897,57 +897,57 @@ begin ------------ array_uintersect_uassoc() with ordinary func - $a=array ( '0.1' => - class cr { - private $priv_member = 9; - public $public_member = 9; - }, - '0.5' => - class cr { - private $priv_member = 12; - public $public_member = 12; - }, - 0 => - class cr { - private $priv_member = 23; - public $public_member = 23; - }, - 1 => - class cr { - private $priv_member = 4; - public $public_member = 4; - }, - 2 => - class cr { - private $priv_member = -15; - public $public_member = -15; - }, + 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' => - class cr { - private $priv_member = 9; - public $public_member = 9; - }, - '0.5' => - class cr { - private $priv_member = 22; - public $public_member = 22; - }, - 0 => - class cr { - private $priv_member = 3; - public $public_member = 3; - }, - 1 => - class cr { - private $priv_member = 4; - public $public_member = 4; - }, - 2 => - class cr { - private $priv_member = -15; - public $public_member = -15; - }, + 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_uintersect_uassoc($a, $b, "comp_func_cr", "comp_func")); array(2) { @@ -970,57 +970,57 @@ begin ------------ array_uintersect_uassoc() with method -------- $a=array ( '0.1' => - class cr { - private $priv_member = 9; - public $public_member = 9; - }, - '0.5' => - class cr { - private $priv_member = 12; - public $public_member = 12; - }, - 0 => - class cr { - private $priv_member = 23; - public $public_member = 23; - }, - 1 => - class cr { - private $priv_member = 4; - public $public_member = 4; - }, - 2 => - class cr { - private $priv_member = -15; - public $public_member = -15; - }, + 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' => - class cr { - private $priv_member = 9; - public $public_member = 9; - }, - '0.5' => - class cr { - private $priv_member = 22; - public $public_member = 22; - }, - 0 => - class cr { - private $priv_member = 3; - public $public_member = 3; - }, - 1 => - class cr { - private $priv_member = 4; - public $public_member = 4; - }, - 2 => - class cr { - private $priv_member = -15; - public $public_member = -15; - }, + 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_uintersect_uassoc($a, $b, array("cr", "comp_func_cr"), "comp_func")); array(2) { http://cvs.php.net/diff.php/php-src/ext/standard/tests/array/var_export.phpt?r1=1.3&r2=1.4&ty=u Index: php-src/ext/standard/tests/array/var_export.phpt diff -u php-src/ext/standard/tests/array/var_export.phpt:1.3 php-src/ext/standard/tests/array/var_export.phpt:1.4 --- php-src/ext/standard/tests/array/var_export.phpt:1.3 Sun Jan 11 06:55:33 2004 +++ php-src/ext/standard/tests/array/var_export.phpt Mon Oct 17 11:03:12 2005 @@ -6,6 +6,6 @@ var_export($a); ?> --EXPECT-- -class stdClass { - public $foo = 'bar'; -} +stdClass::__set_state(array( + 'foo' => 'bar', +))
-- PHP CVS Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php