一区二区久久-一区二区三区www-一区二区三区久久-一区二区三区久久精品-麻豆国产一区二区在线观看-麻豆国产视频

PHP的array_diff()函數(shù)在處理大數(shù)組時的效率問題

cisa 提交到 php 官方 BUG 頁面上的方法
復制代碼 代碼如下:
<?php
/**
* 解決 php 5.2.6 以上版本 array_diff() 函數(shù)在處理
* 大數(shù)組時的需要花費超長時間的問題
*
* 整理:http://www.CodeBit.cn
* 來源:http://bugs.php.NET/47643
*/
function array_diff_fast($data1, $data2) {
$data1 = array_flip($data1);
$data2 = array_flip($data2);
foreach($data2 as $hash => $key) {
if (isset($data1[$hash])) unset($data1[$hash]);
}
return array_flip($data1);
}
?>

根據 ChinaUnix 論壇版主 hightman 思路重寫的方法
復制代碼 代碼如下:
<?php
/**
* 解決 php 5.2.6 以上版本 array_diff() 函數(shù)在處理大數(shù)組時的效率問題
* 根據 ChinaUnix 論壇版主 hightman 思路寫的方法
*
* 整理:http://www.CodeBit.cn
* 參考:http://bbs.chinaunix.NET/viewthread.php?tid=938096&rpid=6817036&ordertype=0&page=1#pid6817036
*/
function array_diff_fast($firstArray, $secondArray) {
// 轉換第二個數(shù)組的鍵值關系
$secondArray = array_flip($secondArray);
// 循環(huán)第一個數(shù)組
foreach($firstArray as $key => $value) {
// 如果第二個數(shù)組中存在第一個數(shù)組的值
if (isset($secondArray[$value])) {
// 移除第一個數(shù)組中對應的元素
unset($firstArray[$key]);
}
}
return $firstArray;
}
?>

此方法只交換了第二個數(shù)組的 key 和 value,所以效率更高。
注意:php 內置的 array_diff() 函數(shù)可以處理多個數(shù)組,而本文提供的方法只處理了兩個數(shù)組的比較。

php技術PHP的array_diff()函數(shù)在處理大數(shù)組時的效率問題,轉載需保留來源!

鄭重聲明:本文版權歸原作者所有,轉載文章僅為傳播更多信息之目的,如作者信息標記有誤,請第一時間聯(lián)系我們修改或刪除,多謝。

主站蜘蛛池模板: 手机看片自拍自拍自拍 | 美女网站黄免费 | 国产精品酒店视频 | 国内精品久久久久久影院8f | 久久久久综合中文字幕 | 色综合天天综久久久噜噜噜久久〔 | 国产综合第一页 | 国产一区在线观看视频 | 久久久久久一级毛片免费野外 | 国产精品吹潮香蕉在线观看 | 性夜黄a爽爽免费视频国产 性夜影院爽黄e爽痛轻点www | 国产成人美女福利在线观看 | 国内精品1区1区3区4区 | 国产精品一区二区三区高清在线 | 色久悠悠在线 | 国内精品小视频福利网址 | 亚洲精品午夜级久久久久 | 日韩片在线观看 | 欧美激情国产一区在线不卡 | www.射射射| 亚洲综合在线视频 | 最近免费中文在线视频 | 最新精品亚洲成a人在线观看 | 亚洲haose在线观看 | 亚洲二区视频 | 色女生影院 | 在线视频一区二区三区在线播放 | 韩国一级毛片视频 | 91精品国产91热久久p | 手机在线日韩高清理论片 | 久久香蕉热 | 精新精新国产自在现 | 中文一区| 欧美一a一片一级一片 | 中文字幕亚洲区 | 亚洲欧美国产精品 | 91精品啪国产在线观看免费牛牛 | 久久精品国产亚洲a不卡 | 午夜激情视频在线播放 | 麻豆xfplay国产在线观看 | www一区二区 |