gpt4 book ai didi

将对象转换为数组的 PHP 错误

转载 作者:可可西里 更新时间:2023-10-31 23:47:24 25 4
gpt4 key购买 nike

我之前有过这个问题,结论是它是 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));

已在 this bug report 中报告但标记为伪造... the documentation说:

The keys are the member variable names, with a few notable exceptions: integer properties are unaccessible;

关于将对象转换为数组的 PHP 错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29625323/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com