1 回答

TA貢獻(xiàn)1813條經(jīng)驗(yàn) 獲得超2個(gè)贊
如果我沒記錯(cuò)的話,您可以將usort$array_B
與自定義比較函數(shù)一起使用,通過使用array_search的值查找鍵$array_A
,然后比較它們。
$array_A[0]['name'] = "Robson";
$array_A[0]['value'] = "ROB";
$array_A[1]['name'] = "Morticia";
$array_A[1]['value'] = "MORT";
$array_B[0] = "Morticia";
$array_B[1] = "Robson";
usort($array_A, function($a, $b) use ($array_B) {
? ? return array_search($a['name'], $array_B) > array_search($b['name'], $array_B);
});
print_r($array_A);
輸出
Array
(
? ? [0] => Array
? ? ? ? (
? ? ? ? ? ? [name] => Morticia
? ? ? ? ? ? [value] => MORT
? ? ? ? )
? ? [1] => Array
? ? ? ? (
? ? ? ? ? ? [name] => Robson
? ? ? ? ? ? [value] => ROB
? ? ? ? )
)
PHP演示
在 php 7 中你還可以使用<=>spaceship 操作符
usort($array_A, function($a, $b) use ($array_B) {
? ? return array_search($a['name'], $array_B) <=> array_search($b['name'], $array_B);
});
- 1 回答
- 0 關(guān)注
- 116 瀏覽
添加回答
舉報(bào)