範例如下:
實際操作的是三維數組,而且資料量比較大。
$a = [
['name'=>'jack', 'gender'=>'male'],
['age'=>18,'country'=>'China']
];
$b = [
['country'=>'China','age'=>18],
['gender'=>'male','name'=>'jack']
];
除了遍歷比較外有什麼快速有效的方式?
我現在的想法是先把陣列依照相同規則排序,json_encode後再使用md5校驗。不過目前似乎並不能很好的實作排序。
不知各位有什麼很好的方法?
//僅適用於純關聯陣列
function deep_ksort(&$arr) {
}
deep_ksort($a);
deep_ksort($b);
if(json_encode($a) == json_encode($b)){
}
//通用方法
//此函數將多維數組轉換為一維數組
function multiToSingle($arr, $delimiter = '->',$key = ' ') {
}
//判斷兩數組是否全等
function judge($a,$b)
{
if(empty($arr1) && empty($arr2)){
}else{
};
}
你可以看看這篇http://bbs.csdn.net/topics/36...,應該對你有用!
很簡單啊,相同規則排完序,將陣列轉換為字串,比較這兩個字串是否一樣即可
雷雷