Re: When is a global not a global?

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



* and then Robert Cummings declared....
> On Wed, 2006-07-12 at 18:52, Nick Wilson wrote:
> > hi all, 
> > 
> > After upgrading a CMS, im having a problem with global variables not
> > showing up anymore -- configs and things could have changed, but search
> > as i have, i cannot find anything to help me work out what the problem
> > is. 
> > 
> > This should work of course:
> > 
> >     $foo = 'bar';
> > 
> >     function foobar() {
> >       global $foo;
> >       print(" ------ " . $foo);
> >       exit;
> >     }
> > 
> >     foobar();
> > 
> > It prints *nothing*. Does anyone have an idea as to what might stop this
> > from functioning as expected?
> 
> The above code is probably being included, and probably being included
> by a function and so $foo does not have global scope. To ensure global
> scope:
> 
> <?php
>     $GLOBALS['foo'] = 'bar';
> 
>     function foobar()
>     {
>         global $foo;
>         print( " ------ " . $foo );
>         exit;
>     }
> 
>     foobar();
> ?>
> 
> Try that and let us know what happend.

No, it didn't work. It's odd, becuase it worked just fine in the
previous version, and this is a module, so that module is exactly the
same as the previous one -- ie i've not made any changes to do with
includes to it (just a few upgrades to form functions and stuff). 

I have fixed the issue, but the mystery will probably have to remain as
there is a lot more to do in the upgrade :( In the end i just manually
set $GLOBALS as you suggested and did a search and replace on the var to
do $GLOBALS[var] instead of global var; do_stuff($var);

crap i know, but thanks for the response!

-- 
Nick Wilson
http://performancing.com/user/1

-- 
PHP General Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php


[Index of Archives]     [PHP Home]     [Apache Users]     [PHP on Windows]     [Kernel Newbies]     [PHP Install]     [PHP Classes]     [Pear]     [Postgresql]     [Postgresql PHP]     [PHP on Windows]     [PHP Database Programming]     [PHP SOAP]

  Powered by Linux