Php 为什么在返回上下文中使用ksort()会失败,而其他标准函数可以工作
在这样的返回上下文中使用PHP的ksort函数时Php 为什么在返回上下文中使用ksort()会失败,而其他标准函数可以工作,php,arrays,ksort,Php,Arrays,Ksort,在这样的返回上下文中使用PHP的ksort函数时 function test() { $items = array( 126 => 'apple', 41 => 'pear', 80 => 'mango' ); return ksort($items); } $result = test(); var_dump($result); // bool(true) 当var_转储时,我得到的结果是boolt
function test() {
$items = array(
126 => 'apple',
41 => 'pear',
80 => 'mango'
);
return ksort($items);
}
$result = test();
var_dump($result); // bool(true)
当var_转储时,我得到的结果是booltrue
另一方面,当像在PHP文档中使用的那样使用ksort时,它是有效的
function test() {
$items = array(
126 => 'apple',
41 => 'pear',
80 => 'mango'
);
ksort($items)
return $items;
}
$result = test();
var_dump($result); // properly ordered array
我可以在返回上下文中使用其他PHP函数,所以我的问题是为什么在第一个示例中ksort不起作用,为什么它返回true?因为ksort更改原始数组,但返回布尔值。在第二个示例中,返回数组,第一个示例仅返回ksort的返回值
请阅读文档:
啊,是的,我只是再次检查了PHP文档,我没有看到它返回布尔值。我认为一个变量必须通过引用传递,这样才能工作。谢谢!