|
php.net | support | documentation | report a bug | advanced search | search howto | statistics | random bug | login |
[2003-06-16 05:51 UTC] admin at nexusfor dot com
Description:
------------
When I read an array of objects saved in a session variable I cannot access object's variables.
Print_r reports:
Array ( [0] => __PHP_Incomplete_Class Object ( [__PHP_Incomplete_Class_Name] => class_voucher_dettaglio [descrizione] => A3 [gg] => 1 [periodi] => 1 [base] => 23 [totale] => 23 )
This problem appears only when php retrieves variable from session_file (that appear correct)
Reproduce code:
---------------
while (list ($key, $val ) = each ($_SESSION ["PREV_DETTAGLIO"] ) )
{
echo ($val->dettaglio);
}
Expected result:
----------------
list of values
Actual result:
--------------
nothing
PatchesPull RequestsHistoryAllCommentsChangesGit/SVN commits
|
|||||||||||||||||||||||||||
Copyright © 2001-2025 The PHP GroupAll rights reserved. |
Last updated: Thu Oct 30 14:00:01 2025 UTC |
I'm sure that there's something wrong. this script shows the problem in 4.3.1/4.3.2 release for WIN <? class bogus { var $a; } $b = new bogus; $b -> a = $HTTP_GET_VARS["b"]; $_SESSION ["SESS"] = array_merge ($_SESSION ["SESS"], array ($b) ); print_r ($_SESSION ["SESS"]); reset ($_SESSION ["SESS"] ); $i = 0; while (list ($key, $val ) = each ($_SESSION ["SESS"] ) ) { echo $val->a; } ?> the scalar version just work file <? $b = $HTTP_GET_VARS["b"]; $_SESSION ["SESS"] = array_merge ($_SESSION ["SESS"], array ($b) ); print_r ($_SESSION ["SESS"]); reset ($_SESSION ["SESS"] ); $i = 0; while (list ($key, $val ) = each ($_SESSION ["SESS"] ) ) { echo $b; } ?> thank yousecond source correction: <? $b = $HTTP_GET_VARS["b"]; $_SESSION ["SESS"] = array_merge ($_SESSION ["SESS"], array ($b) ); print_r ($_SESSION ["SESS"]); reset ($_SESSION ["SESS"] ); $i = 0; while (list ($key, $val ) = each ($_SESSION ["SESS"] ) ) { echo $val; } ?> sorry for the mistakeI'm lazy man so I set session.auto_start = 1 in my php.ini :-) I also tried with explicit session_start(), the problem persists. session serialiazation seems to works fine here the tmp file: SESS|a:2:{i:0;O:5:"bogus":1:{s:1:"a";s:1:"1";}i:1;O:5:"bogus":1:{s:1:"a";s:1:"1";}} Today is just an horrible monday for me, but I'm sure that there is something strange and I don't think that problem is in the script. the code works fine in your environment ?