$_SESSION内に保存した配列にアクセスしようとしています。ループの直前に$_SESSIONのカウントと内容を適切に印刷しました。
// $_SESSION info.
Length: 4
Array
(
[loggedIn] => 1
[total] => 0
[plates] => Array ([0] => plates [1] => 14 [2] => 5)
[backpack] => Array ([0] => backpack [1] => 78 [2] => 1)
)
ここでは、最後の2つのオブジェクトが実際には配列であることがはっきりとわかります。しかし、私がそのis_array
方法を試してみると、
//PHP code
$length = count($_SESSION);
for ($i = 0; $i < $length; $i++)
{
if(is_array($_SESSION[$i])){
echo 'session '.$i.' is an array.<br />';
}
else{
echo 'session '.$i.' is not an array.<br />';
}
}
すべてのオブジェクトがfalseを返します。
session 0 is not an array.
session 1 is not an array.
session 2 is not an array.
session 3 is not an array.
APIはis_array
、「指定された変数が配列であるかどうか」を検出することになっていると言います。しかし、私はここで何かを誤解しているに違いないと思います...