RE: [PHP] Stopping objects from auto-serializing
- From: M.Ford@xxxxxxxxxxxxxx ("Ford, Mike")
- Date: Wed, 31 Oct 2007 11:24:58 -0000
-----Original Message-----
From: David Christopher Zentgraf [mailto:deceze@xxxxxxxxx]
Sent: 31 October 2007 08:04
To: PHP
Subject: Re: [PHP] Stopping objects from auto-serializing
After some more playing around and a lot of print_r($SESSION)'s:
This specific PHP configuration seems to replace every entry in
$_SESSION if a variable with the same name is used in the
main script
with that variable.
I.e.
session_start() // $_SESSION["foo"] is now "bar"
$foo = "12345";
$var = "xxxx";
function test() {
$foo = "67890";
}
test();
After execution finished $_SESSION["foo"] is now "12345", but
there's
no $_SESSION["var"].
What's going on here?
That's exactly the behaviour caused by register_globals being on --
session_start() takes each $_SESSION["var"] and makes the equivalent
global $var be a reference to it. Other variables only get mirrored in
$_SESSION if you session_register() them.
(track_vars, mentioned previously, is a red herring -- it's been
permanently enabled since 4.0.something.)
Cheers!
Mike
------------------------------------------------------------------------
----------------
Mike Ford, Electronic Information Services Adviser,
JG125, The Headingley Library, James Graham Building,
Headingley Campus, Beckett Park, LEEDS, LS6 3QS
United Kingdom
Tel: +44 113 812 4730 Fax: +44 113 812 3211
To view the terms under which this email is distributed, please go to http://disclaimer.leedsmet.ac.uk/email.htm
.
- Prev by Date: Re: [PHP] crop an image
- Next by Date: Re: [PHP] crop an image
- Previous by thread: while-do +array
- Next by thread: FW: Reaching the PHP mailing list owners
- Index(es):
Relevant Pages
|