[未亲测]大数组中使用array_flip代替in_array

转载 2018年04月16日 09:24:20

原文链接
http://www.cnblogs.com/firstForEver/p/7263348.html)

in_array 或者 array_search 会遍历整个数组,数组很大时耗时较长。

考虑使用 array_flip 交换键和值后,使用array_key_exists 或者 语言构造器isset。

$c = array_flip($b);
foreach($a as $val){
    if(isset($c[$xx])){
        //
    }
}

array_search使用

array_search — 在数组中搜索给定的值,如果成功则返回相应的键名 mixed array_search ( mixed $needle , array $haystack [, bo...
  • tsuliuchao
  • tsuliuchao
  • 2012-03-27 14:58:20
  • 657

关于正确使用PHP的in_array数组

in_array数组误区官方实例 在数组中搜索值 “Mark” ,并输出一些文本: 运行实例 匹配已找到 今天在公...
  • jack19941215
  • jack19941215
  • 2017-10-06 11:41:14
  • 1229

in_array()大数组查询性能问题

问题最近在实现一个项目接口的时候发现当数组过大的时候,数据返回的速度有点慢。接口数据返回最长反应时间2s,经过反复调试发现代码段耗时最长的部分在in_array()函数。解决过程在stackoverf...
  • a2824256
  • a2824256
  • 2016-03-12 23:47:05
  • 833

关于in_array() foreach array_search() 的性能对比

  • long7181226
  • long7181226
  • 2014-03-29 15:57:22
  • 3240

PHP中in_array 效率及其优化

PHP中in_array 效率极其优化 时间 2013-12-26 12:05:20  LNMP100实验室原文  http://www.lnmp100.com/1059 大家可能...
  • dabao1989
  • dabao1989
  • 2014-09-18 11:49:45
  • 2912

PHP函数in_array、array_key_exists和isset效率分析

自己不才编写了一个函数,粗略的比较一下三个函数应用上的效率:
  • daiyan_csdn
  • daiyan_csdn
  • 2016-07-21 17:31:32
  • 2678

像php一样,在smarty模板中使用in_array检查数组值

在Smarty中又有没有像php中的in_array()函数一样,能够检查判断数组中是否存在某值的办法呢?尽管in_array函数存在着效率问题。 其实在Smarty模板中也可以用类似php...
  • zzz_781111
  • zzz_781111
  • 2013-03-20 10:18:16
  • 2268

thinkphp5 in_array函数 不区分大小写的实现

比如访问的链接是:http://www.域名.com/mobile.php/User/getCode.html 访问User控制器的getCode方法$request = \think\Reques...
  • gongqinglin
  • gongqinglin
  • 2017-10-18 20:27:47
  • 513

thinkphp模板里面判断一个变量是否存在于一个数组中 相当于in_array() in 或range 标签

要输出的内容
  • u013160024
  • u013160024
  • 2014-09-10 12:24:38
  • 12098
收藏助手
不良信息举报
您举报文章:[未亲测]大数组中使用array_flip代替in_array
举报原因:
原因补充:

(最多只允许输入30个字)