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
>>{
>>         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,$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: [EMAIL PROTECTED]
>>For additional commands, e-mail: [EMAIL PROTECTED]
>>To contact the list administrators, e-mail: [EMAIL PROTECTED]
>
>
>--
>PHP General Mailing List (http://www.php.net/)
>To unsubscribe, e-mail: [EMAIL PROTECTED]
>For additional commands, e-mail: [EMAIL PROTECTED]
>To contact the list administrators, e-mail: [EMAIL PROTECTED]
>


-- 
PHP General Mailing List (http://www.php.net/)
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]
To contact the list administrators, e-mail: [EMAIL PROTECTED]

Reply via email to