时时商务社区
标题:
php中使用in_array() foreach array_search() 查找数组是否包含时的性能对比
[打印本页]
作者:
xgnic
时间:
2018-2-14 05:46
判断某字符是否包含与某于数组中,方法有很多,刚学习php的新手们估计偏向于使用循环来解决,对于一般的小网站来说,这种解决方案是不会出现什么大问题的。但就性能来说,这种方法不是最好的方法,下面笔者就 foreach,in_array() array_search 这三种方法来比较这三种方法在性能表现上的差异。
start();
$a = 'k';
$b = array('a','b','c','d','e','f','g','h','i','j','k');
/*
for ($i=0; $i $value) {
if ($a == $value) {
//echo TRUE;
continue;
}
}
}
*/
/*
for ($i=0; $i stop();
echo $_b;
echo "执行时间: ".$runtime->spent()." 毫秒";
class runtime{
var $StartTime = 0;
var $StopTime = 0;
function get_microtime(){
list($usec, $sec) = explode(' ', microtime());
return ((float)$usec + (float)$sec);
}
function start(){
$this->StartTime = $this->get_microtime();
}
function stop(){
$this->StopTime = $this->get_microtime();
}
function spent(){
return round(($this->StopTime - $this->StartTime) * 1000, 1);
}
}
?>
以上程序执行时间如下图所示:
in_array()
foreach
array_search()
由上可以大致看出这三种方法在性能上的表现了吧,array_search 和 in_array 表现差不多,foreach 表现最差。
您可能感兴趣的文章:
php数组函数序列之array_key_exists() - 查找数组键名是否存在
php数组函数序列之in_array() 查找数组值是否存在
php数组函数序列之in_array() - 查找数组中是否存在指定值
php 操作数组(合并,拆分,追加,查找,删除等)
PHP 冒泡排序 二分查找 顺序查找 二维数组排序算法函数的详解
php数组查找函数in_array()、array_search()、array_key_exists()使用实例
php在数组中查找指定值的方法
PHP查找与搜索数组元素方法总结
php实现在多维数组中查找特定value的方法
PHP的数组中提高元素查找与元素去重的效率的技巧解析
PHP查找数组中只出现一次的数字实现方法【查找特定元素】
欢迎光临 时时商务社区 (http://bbs.4435.cn/)
Powered by Discuz! X3.2