【发布时间】:2016-04-15 08:50:19
【问题描述】:
我确定这是array_column() 的预期行为:
class myObj {
public $prop;
public function __construct(int $prop) {
$this->prop = $prop;
}
}
$objects = [
new myObj(7),
new myObj(3),
new myObj(8),
new myObj(0),
new myObj(2),
new myObj(6)
];
echo '<pre>';
print_r(array_column($objects, 'prop'));
echo '</pre>';
返回:
Array (
[0] => 7
[1] => 3
[2] => 8
[3] => 2
[4] => 6
)
0 丢失。也许它在内部使用empty()..?
当0 和false 可以是正常的有效对象属性值,而array_column() 用于返回值时,为什么它不会返回虚假值..?
什么是最好的解决方法..?
【问题讨论】:
-
对我来说似乎是一个错误。
-
哪个 PHP 版本?
-
Windows/IIS 上的 PHP 7.0.0...
-
在 Ubuntu 的 PHP 7.0.4 上转载