有没有更有效的方法在PHP中找到数组中的元素?

时间:2012-11-19 22:43:56

标签: php arrays

我必须每天检索超过数千条国际数据库的记录,但我必须将其中一条记录与我的数据库进行比较,以避免在我的数据库中注册重复的记录。其实我正在使用这个功能

in_array($element,$myarray)

所以我正在寻找一种更有效的方法来验证元素是否已经存在于我的数组中。

我希望你能帮助我。

3 个答案:

答案 0 :(得分:3)

您可以创建两个数组并使用array_diff

array_diff将为您提供一个包含不同值的数组。

array_diff

中查看详情

答案 1 :(得分:0)

我相信这是解决这个问题的最好办法。唯一的另外两种方法是使用forforeachserializing数组使用strstr来迭代数组。但这些选择效率不高。关于解析时间here

的帖子很棒

答案 2 :(得分:0)

您可以将元素放在键中:

$myarray[$element] = true;

然后你可以用

来检查它
if ($myarray[$element])

hash table中的查找应该比数组值中的搜索快得多。