我之前有过这个问题,最后得出的结论是这是 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 转换后有什么方法可以“修复”数组吗?
对我来说绝对像是一个错误(PHP 5.2.6)。
您可以像这样修复数组:
$arr = array_combine(array_keys($arr), array_values($arr));
已报道于这个错误报告但被标记为假的...文档 says:
键是成员变量
名称,但有一些值得注意的例外:
整数属性不可访问;
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)