> > No, $varname isn't created. You don't need it. You have a variable
> called
> > $_SESSION['varname'], just use that where ever you need it (even
within
> > functions). If register_globals is on, you should be using the
> > session_register() method, anyhow, not the one above.
> 
> I have register_globals off as that is (as I udnerstand it) a more
> secure approach.  ANd it will make hte code messy to use
> $_SESSION['varname'] everywhere.  I think I'll just copy it to a
global
> and use it that way.

You think it'll make your code "messy" but to anyone else that has to
eventually read your code, it'll be a lot clearer to them. Also, when
you come back later to edit this code, you'll know exactly where
$_SESSION['varname'] came from, instead of having to wade through your
code and find the part where you say $varname = $_SESSION['varname']. 

I don't understand why people are so afraid to just use the $_GET,
$_POST, etc arrays in their code and have to assign them to temp
variables. You're just wasting time and memory. 
 
> Which leads to another question ... I thought these two constructs
were
> equivalent:
> 
>       $var = "foo";
>       session_register('var');
>       .....
>       $var = "bar";
> 
>       $var = "foo";
>       $_SESSION['var'] = $var;
>       .....
>       $var = "bar";
> 
> I would have thought that in both cases the session data saved at the
> end of the script will have $var set to "bar", 

Well, $var will be "bar" at the end of each script, but only the first
example (with register globals on) will actually change the session
value. With register globals off, $_SESSION['var'] and $var are two
totally different variables. 

Just get in the habit of using $_SESSION['varname'], you'll be better
off for it. 

---John W. Holmes...

PHP Architect - A monthly magazine for PHP Professionals. Get your copy
today. http://www.phparch.com/




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

Reply via email to