可能是重复问题:
PHP中判断数组键是否存在的更快更好的方法是什么?
假设我想在Memcache上存储我的朋友列表。 有时需要搜索用户是否在我的列表中,有时需要获取所有朋友列表。
你会选择
$friends[] = $friend
或者$friends[$friend] = 1;
理念是要尽可能节省内存,同时不会影响速度。
我没有找到任何关于 PHP 5.3.8 的案例研究能够帮助我解决我的问题:
在负载下,使用 array_key_exists 还是 in_array 更快?(例如:foo 是 bar 的朋友吗?)
另外,有时我需要获取整个朋友列表,因此需要遍历整个列表以构建朋友数组。对于第二种方法一点都不确定,因为我还不知道是否会有更多的 array_search、array_key_exists、in_array 或完整的朋友列表提取。
有什么想法吗?
array_search()
和array_key_exists()
做的事情不同 :) - Ja͢ckarray_search
从一开始就没有存在的必要。 - Eugenearray_search()
还是in_array()
。 - Ja͢ck