天天躁日日躁狠狠躁AV麻豆-天天躁人人躁人人躁狂躁-天天澡夜夜澡人人澡-天天影视香色欲综合网-国产成人女人在线视频观看-国产成人女人视频在线观看

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

cisa 提交到 php 官方 BUG 頁面上的方法
復制代碼 代碼如下:
<?php
/**
* 解決 php 5.2.6 以上版本 array_diff() 函數在處理
* 大數組時的需要花費超長時間的問題
*
* 整理: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() 函數在處理大數組時的效率問題
* 根據 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) {
// 轉換第二個數組的鍵值關系
$secondArray = array_flip($secondArray);
// 循環第一個數組
foreach($firstArray as $key => $value) {
// 如果第二個數組中存在第一個數組的值
if (isset($secondArray[$value])) {
// 移除第一個數組中對應的元素
unset($firstArray[$key]);
}
}
return $firstArray;
}
?>

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

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

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

主站蜘蛛池模板: tobu中国日本高清 | 虫族bl文全肉高h | 岛国大片在线观看免费版 | 开心片色99xxxx | 快播在线电影网站 | 亚洲国产精品嫩草影院永久 | 老女老肥熟国产在线视频 | 成人毛片手机版免费看 | 男总裁憋尿PLAY灌尿BL | 又紧又大又爽精品一区二区 | 毛片免费观看视频 | 岳扒开让我添 | 竹菊影视一区二区三区 | 亚洲不卡视频 | 女人精69xxxxx | 内射无码AV-区二区在线观看 | 久久亚洲精品专区蓝色区 | 青青青伊人 | 青青青青青青青草 | 小鸟酱喷水 | 亚洲偷偷自拍免费视频在线 | 日本xxxxxxx| 小雪奶水涨翁工帮吸的推荐语录 | 国产亚洲精品久久久闺蜜 | 看 视频一一级毛片 | 全文都是肉高h文 | 亚洲成色WWW久久网站夜月 | 欲香欲色天天综合和网 | 黑丝女仆恋上我 | 国产欧美精品一区二区三区-老狼 | 91国偷自产一区二区三区 | 一本大道手机在线看 | 我把寡妇日出水好爽 | 亚洲免费大全 | 一本道手机无码在线看 | 国产一卡2卡3卡4卡孕妇网站 | 日本漫画之无彩翼漫画 | 开心久久激情 | MATURETUBE乱妇 | 高H高肉强J短篇NP | 亚洲国产精品嫩草影院 |