1

可能重复:
用数字字符串键对数组进行欺骗

如 PHP 手册中所述,我们可以对对象进行类型转换并将它们转换为数组,如下所示:

$arrayResult = (array)$someObject;

但我在文档中发现了非常有趣的评论:

如果将对象转换为数组,则结果是一个数组,其元素是对象的属性。键是成员变量名称,有一些值得注意的例外:整数属性是不可访问的

“整数属性”代表什么?

4

2 回答 2

0

以下是示例:

$obj = new stdClass;
$obj->{'1'} = 1;
$arr = (array) $obj;
var_dump($arr);
var_dump(isset($arr[1]));  // will get false
于 2012-10-21T12:20:04.923 回答
0

我相信这意味着您不能使用数组的典型整数属性来迭代,例如在 for 循环中。元素不是整数索引的。

于 2012-10-21T10:05:04.563 回答