Bug #12859 Updated: Session unable to store array of classes
| From: | yohgaki@php.net | Date: | Thu, 20 Dec 2001 03:15:59 +0000 |
| Subject: | Bug #12859 Updated: Session unable to store array of classes | ||
| References: | 1 | Groups: | php.dev |
| Request: | Send a blank email to php-dev+get-74494@lists.php.net to get a copy of this message | ||
ID: 12859
Updated by: yohgaki
Reported By: philipmateescu@hotmail.com
Old Status: Open
Status: Feedback
Bug Type: Session related
Operating System: W2k, Linux
PHP Version: 4.0.6
New Comment:
Please test with 4.1.0 and latest CVS snapshot.
CVS snapshot can be found
http://snaps.php.net/
If you don't have problem with latest CVS snapshot,
you can close your bug report by yourself.
Please report the result. When you update your bug
report, do not forget updating PHP version also.
Thank you
--
Yasuo
Previous Comments:
------------------------------------------------------------------------
[2001-08-20 08:31:20] philipmateescu@hotmail.com
Session is unable to store an array of classes. If you try to add to an array (using []) stored in
the session, it overrides the array instead of adding to it
Here's a sample code:
<?
include_once("cls1.php");
if (!session_is_registered("ClassOne")) {
session_register("ClassOne");
echo "<BR>ClassOne now in session";
}
?>
<BR><B>Right now we have <?= sizeof($HTTP_SESSION_VARS["ClassOne"])?>
classes</B>.<P>
<?
if ($HTTP_GET_VARS["count"] != 0) {
for ($i = 0; $i < $HTTP_GET_VARS["count"]; $i++) {
$HTTP_SESSION_VARS["ClassOne"][] = new ClassOne(); //this line should add to the array
}
}
?>
<B>And now we have <?= sizeof($HTTP_SESSION_VARS["ClassOne"])?>
classes</B>.<P>
<form method="get" action="regcls.php">
Register <input type="text" name="count" size="3"> objects.
<input type="submit">
</form>
<PRE>
<?
if ($HTTP_GET_VARS["delete"] == 1) {
echo "<BR>Killing CountOne from session...";
$HTTP_SESSION_VARS["CountOne"]=0;
session_unregister("CountOne");
}
for ($i=0; $i < sizeof($HTTP_SESSION_VARS["ClassOne"]); $i++) {
echo "\n$i ClassOne->count = ".
$HTTP_SESSION_VARS["ClassOne"][$i]->getCount();
}
?>
</PRE>
<?
?>
------------------------------------------------------------------------
Edit this bug report at http://bugs.php.net/?id=12859&edit=1