以前にこの質問があり、5.2.5 のバグであると結論付けられました。少なくとも私にとっては、5.2.6 でもまだ壊れています。
それが壊れているか、あなたのために働くかどうか私に知らせてください:
$obj = new stdClass();
$obj->{"foo"} = "bar";
$obj->{"0"} = "zero";
$arr = (array)$obj;
//foo -- bar
//0 -- {error: undefined index}
foreach ($arr as $key=>$value){
echo "$key -- " . $arr[$key] . "\n";
}
stdClass からキャストされた後に配列を「修正」する方法はありますか?