PHP .net 文档中的一个 bug

2018-10-17 10:39:49 +08:00
 OMGZui

http://php.net/manual/zh/language.types.object.php

转换为对象

如果将一个对象转换成对象,它将不会有任何变化。如果其它任何类型的值被转换成对象,将会创建一个内置类 stdClass 的实例。如果该值为 NULL,则新的实例为空。array 转换成 object 将使键名成为属性名并具有相对应的值,除了数字键,不迭代就无法被访问。

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

但其实我在 php7 下面返回的是

$obj = (object) array('1' => 'foo');
var_dump($obj);
var_dump(isset($obj->{'1'}));
var_dump($obj->{'1'});
var_dump(key($obj));

object(stdClass)#1 (1) {
  ["1"]=>
  string(3) "foo"
}
bool(true)
string(3) "foo"
string(1) "1"

文档啥时更新下呢?

2408 次点击
所在节点    PHP
2 条回复
eslizn
2018-10-17 10:44:09 +08:00
OMGZui
2018-10-17 10:45:49 +08:00
@eslizn 中文文档没人更新了么这是

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/498369

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX