加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > PHP教程 > 正文

PHP编程:php中使用in_array() foreach array_search() 查找数组

发布时间:2020-12-13 02:34:00 所属栏目:PHP教程 来源:网络整理
导读:《php中使用in_array() foreach array_search() 查找数组是否包含时的性能对比》要点: 本文介绍了php中使用in_array() foreach array_search() 查找数组是否包含时的性能对比,希望对您有用。如果有疑问,可以联系我们。 PHP实例 判断某字符是否包含与某于

《php中使用in_array() foreach array_search() 查找数组是否包含时的性能对比》要点:
本文介绍了php中使用in_array() foreach array_search() 查找数组是否包含时的性能对比,希望对您有用。如果有疑问,可以联系我们。

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

PHP实例
<?php
$runtime= new runtime;
$runtime->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实例以上程序执行时间如下图所示:

PHP实例in_array()

PHP实例

PHP实例foreach

PHP实例

PHP实例array_search()

PHP实例

PHP实例由上可以大致看出这三种办法在性能上的表现了吧,array_search 和 in_array 表现差不多,foreach 表现最差.

编程之家培训学院每天发布《php中使用in_array() foreach array_search() 查找数组是否包含时的性能对比》等实战技能,PHP、MYSQL、LINUX、APP、JS,CSS全面培养人才。

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读