Thanks Yasuo, That might explain why $gGlobal is not permanently set to 99, but that doesn't explain why $gGlobal is set to 55 in ChangeGlobalValue() permanently. So are you or am I missing something? Bye, John ""Yasuo Ohgaki"" <[EMAIL PROTECTED]> wrote in message [EMAIL PROTECTED]">news:[EMAIL PROTECTED]... > This is expected behavior of PHP's reference. Reference works like a pointer, > but it dose NOT works like a pointer. This is case that reference does not > works as many programmer expected. > > I think this is in manual. > > Hint: when programmer use 'global $var'. It is the same as do '$var = & > $GLOBALS['var']'. > > Regards, > > Yasuo Ohgaki > ========================= > My favorite links > [RFC] http://www.faqs.org/rfcs/ [W3C] http://www.w3.org/ > [PHP Manual] http://www.php.net/manual/en/ > > > Hello, > > > > Try the following code: > > > > <?php > > > > $gGlobal = 1; > > function ChangeGlobalValue() > > { > > global $gGlobal; > > > > $local = 55; > > $gGlobal = $local; > > print "Value:Global=$gGlobal<BR>"; > > } > > > > function ChangeGlobalRef() > > { > > global $gGlobal; > > > > $local = 99; > > $gGlobal = &$local; > > print "Ref:Global=$gGlobal<BR>"; > > } > > > > print "Global=$gGlobal<BR>"; > > ChangeGlobalValue(); > > print "Global=$gGlobal<BR>"; > > ChangeGlobalRef(); > > print "Global=$gGlobal<BR>"; > > ?> > > > > I get the following results: > > > > Global=1 > > Value:Global=55 > > Global=55 > > Ref:Global=99 > > Global=55 <=========== shouldn't this be 99 ??? > > > > Why does setting a global variable to a reference fail in a function? > > > > Tested on PHP 4.0.4 on IIS5 (CGI version). > > > > > > > > > > -- > > 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]