Php 阵列udiff和x27的用途;s正/负返回回调值并用于字符串
我感兴趣的是,属性Php 阵列udiff和x27的用途;s正/负返回回调值并用于字符串,php,arrays,callback,array-difference,Php,Arrays,Callback,Array Difference,我感兴趣的是,属性aString在这两个对象数组中是否不同: 数组1 Array ( [0] => stdClass Object ( [aString] => two [b] => 2 ) [1] => stdClass Object ( [aString] => four [b] => 4
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
)
)
根据:
比较函数必须返回小于、等于或等于的整数
如果第一个参数被认为是
分别小于、等于或大于第二个
处理字符串时如何确定大于或小于?
在提出这个问题之前,我修改了示例#1,该示例使用以下内容中的stdClass对象:
function compare_by_area($a, $b) {
...
if ($areaA < $areaB) {
return -1;
} elseif ($areaA > $areaB) {
return 1;
} else {
return 0;
}
}
按区域比较函数($a,$b){
...
如果($A区<$B区){
返回-1;
}其他($areaA>areaB){
返回1;
}否则{
返回0;
}
}
对此(请注意我如何切换已交换的返回标志):
按区域比较函数($a,$b){
...
如果($A区<$B区){
返回1;
}其他($areaA>areaB){
返回-1;
}否则{
返回0;
}
}
它返回了完全相同的结果大于或小于
数组的回调值的效果是什么?
返回的回调值?@AbraCadaver Ah,因此字符串的负/正增量值是通过比较其二进制值(使用pack?)来确定的?好吧,我想这是有道理的。但是为什么array\u udiff()
关心它是大于还是小于,而不是它对这些信息没有任何作用?但是,如果你只想看到区别,那么它是大于还是小于有什么关系?@abracadver我看到了你先前删除的注释,意识到我说它们是对象,但我指的是对象数组,编辑了这篇文章。@AbraCadaver不,不管它是大于还是小于。这有关系吗?它似乎不会,如果不会,为什么不请求true/false呢?但是由于文件允许正面和负面,我想我遗漏了一些东西。
function compare_by_area($a, $b) {
...
if ($areaA < $areaB) {
return 1;
} elseif ($areaA > $areaB) {
return -1;
} else {
return 0;
}
}