note 74342 deleted from language.references.spot by danbrown
| From: | danbrown@php.net | Date: | Tue, 08 Feb 2011 12:25:53 +0000 |
| Subject: | note 74342 deleted from language.references.spot by danbrown | ||
| References: | 1 | Groups: | php.notes |
| Request: | Send a blank email to php-notes+get-176769@lists.php.net to get a copy of this message | ||
Note Submitter: Steve Clay
----
BenBE's function is broken for testing objects. Here's a variation on it just for testing
objects:
<?php
function same_obj(&$var1, &$var2) {
if ($var1 !== $var2) {
return false;
}
$same = false;
$key = uniqid("same_obj_", true);
$var1->$key = $key;
if (isset($var2->$key) && $var2->$key == $key) {
$same = true;
}
unset($var1->$key);
return $same;
}
// PHP4 references are risilient as array members
$f1 =& new Foo;
$f2 = array(&$f1);
$f3 = $f2;
echo (int)same_obj($f1, $f3[0]); // 1!
?>