【发布时间】:2016-05-18 19:46:39
【问题描述】:
我对 PHP7 还很陌生,到目前为止它看起来很棒而且功能强大。我一直在使用PHP5.6,所以我开始了解宇宙飞船运算符<=>的用法。但不知何故,我无法理解语句返回-1 的逻辑。我知道返回0 或1 的意义,它们是false 或true。谁能澄清return -1 的用法?
Function normal_sort($a, $b) : int
{
if( $a == $b )
return 0;
if( $a < $b )
return -1;
return 1;
}
function space_sort($a, $b) : int
{
return $a <=> $b;
}
$normalArray = [1,34,56,67,98,45];
//Sort the array in asc
usort($normalArray, 'normal_sort');
foreach($normalArray as $k => $v)
{
echo $k.' => '.$v.'<br>';
}
$spaceArray = [1,34,56,67,98,45];
//Sort it by spaceship operator
usort($spaceArray, 'space_sort');
foreach($spaceArray as $key => $value)
{
echo $key.' => '.$value.'<br>';
}
【问题讨论】:
-
这个我标记的问题的答案是:stackoverflow.com/a/32802797/3000068
-
我看到了。我的问题不完全是宇宙飞船操作员的工作。返回-1是什么意思?
-
@Mr.T 你的意思是“什么意思?”或“目的是什么?”。意思很清楚,第一个操作数小于第二个
-
目的是什么?对不起,我选错了词汇。 :)