php中使用in_array() foreach array_search() 查找数组是否包含时的性能对比

发布时间:2022-04-30 发布网站:脚本宝典
脚本宝典收集整理的这篇文章主要介绍了php中使用in_array() foreach array_search() 查找数组是否包含时的性能对比脚本宝典觉得挺不错的,现在分享给大家,也给大家做个参考。

判断某字符是否包含与某于数组中,方法有很多,刚学习PHP新手们估计偏向于使用循环来解决,对于一般的小网站来说,这种解决方案是不会出现什么大问题的。但就性能来说,这种方法不是最好的方法,下面笔者就 foreach,in_array() array_seArch 这三种方法来比较这三种方法性能表现上的差异。

<PRe class="brush:PHP;"> start(); $a = 'k'; $b = array('a','b','c','d','e','f','g','h','i','j','k');

/
for ($i=0; $i < 100000; $i++) {
var_dump(in_array($a,$b));
}
/

/
for ($i=0; $i < 100000; $i++) {
foreach ($b as $key => $value) {
if ($a == $value) {
//echo TRUE;
continue;
}
}
}
/

/
for ($i=0; $i < 100000; $i++) {
array_search($a,$b);
}
/

$runtime->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);
}
}
?>

脚本宝典总结

以上是脚本宝典为你收集整理的php中使用in_array() foreach array_search() 查找数组是否包含时的性能对比全部内容,希望文章能够帮你解决php中使用in_array() foreach array_search() 查找数组是否包含时的性能对比所遇到的问题。

如果觉得脚本宝典网站内容还不错,欢迎将脚本宝典推荐好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。