我感兴趣的是这两个对象数组中的属性aString
是否不同:
阵列1
Array
(
[0] => stdClass Object
(
[aString] => two
[b] => 2
)
[1] => stdClass Object
(
[aString] => four
[b] => 4
)
[2] => stdClass Object
(
[aString] => six
[b] => 6
)
)
数组2
Array
(
[0] => stdClass Object
(
[aString] => two
[b] => 2
)
[1] => stdClass Object
(
[aString] => newfour
[b] => 4
)
[2] => stdClass Object
(
[aString] => six
[b] => 6
)
)
根据docs:
比较函数必须返回小于,等于或的整数 如果第一个参数被认为是大于零 分别小于,等于或大于第二个。
在处理字符串时,如何更大或更小?
在提出这个问题之前,我修改了使用stdClass对象的docs示例#1:
function compare_by_area($a, $b) {
...
if ($areaA < $areaB) {
return -1;
} elseif ($areaA > $areaB) {
return 1;
} else {
return 0;
}
}
到此(注意我如何切换交换的返回符号):
function compare_by_area($a, $b) {
...
if ($areaA < $areaB) {
return 1;
} elseif ($areaA > $areaB) {
return -1;
} else {
return 0;
}
}
它返回了完全相同的结果。 大于或小于array_udiff()
返回的回调值的影响是什么?