0

我在 PHP 中有一个预先编写的程序,它将数组转换为对象:

<?php
  $obj = (object) array('1' => 'foo');
  var_dump(isset($obj->{'1'})); // outputs 'bool(false)'
  var_dump(key($obj)); // outputs 'int(1)'
?>

使用上述程序,我几乎没有疑问。我搜索了他们的解决方案,但找不到他们的权威答案。

以下是我的查询:

  • 数组正在转换为对象意味着实际发生了什么?声明的数组不是作为对象吗?为什么要完成?是否为这种转换/转换定义了任何特定名称?
  • 请用简单明了的语言解释上面代码中的一些行。我不明白代码行$obj->{'1'}是什么意思?
  • 执行代码后,var_dump(key($obj));为什么我得到 1 而不是 0,因为数组中只有一个数组元素?

提前致谢。

4

0 回答 0