Re: Unable to return object references from functions
| From: | Tom Rogers | Date: | Sun, 16 Dec 2001 04:23:27 +0000 |
| Subject: | Re: Unable to return object references from functions | ||
| References: | 1 | Groups: | php.general |
| Request: | Send a blank email to php-general+get-77850@lists.php.net to get a copy of this message | ||
Hi again
Got a bit sidetracked ... here is your original code :)
class test_class2
{
var $dummy="nothing";}; Function not_assigning(&$not_returned,&$copy) {
global $object;
$object = new test_class;
$object->dummy="original";
$success=1;
$not_returned[] = &$object;
$copy=$object;
$copy->dummy="copy";
var_dump("In the function",$success,$not_returned[0],$copy,$object);
return $success;
}
$success = not_assigning($not_returned,$copy);
echo "<br><br>";
var_dump("Out the function",$success,$not_returned[0],$copy,$object);
?>
At 02:15 PM 16/12/01, Tom Rogers wrote:
Hi Is this doing what you want, seems you have to use an array to create the ref (just getting a handle on objects :) <? class test_class {var $dummy="nothing";}; Function &assigning(&$returned,&$copy,&$object) {global $success; $object->dummy="original"; $success=1; $copy=$object; $copy->dummy="copy"; $returned[] = &$object; var_dump("In the function",$success,$returned[0],$copy,$object); return $object;} $object = assigning($returned,$copy,new test_class); echo "<br><br>"; var_dump("Out the function",$success,$returned[0],$copy,$object); ?> At 03:06 PM 15/12/01, you wrote:Hello, I am trying to return a reference from an object created inside a function and at the same time have the object stored in a global variable. It seems that when I try doing it by assigning the object reference to a function argument that is passed by reference, nothing is returned in that variable despite inside the function the argument variable seems to have the right value. Is this a PHP bug or this is not the right way to do it? Try the example below. Manuel Lemos <? class test_class {-- PHP General Mailing List (http://www.php.net/) To unsubscribe, e-mail: php-general-unsubscribe@lists.php.net For additional commands, e-mail: php-general-help@lists.php.net To contact the list administrators, e-mail: php-list-admin@lists.php.netvar $dummy="nothing";}; Function not_assigning(&$not_returned,&$copy) {global $object;$object=new test_class; $object->dummy="original"; $success=1; $not_returned= &$object; $copy=$object; $copy->dummy="copy"; var_dump("In the function",$success,$not_returned,$copy,$object); return $success;} $success=not_assigning($not_returned,$copy); var_dump("Out the function",$success,$not_returned,$copy,$object); ?> -- PHP General Mailing List (http://www.php.net/) To unsubscribe, e-mail: php-general-unsubscribe@lists.php.net For additional commands, e-mail: php-general-help@lists.php.net To contact the list administrators, e-mail: php-list-admin@lists.php.net