PHP array_intersect() 直到第一个匹配

标签 php arrays loops array-intersect

我有 2 个数组要比较并查找是否至少有一个共同值

这工作得很好:

$arr1 = array(1, 2, 3, 4, 5);
$arr2 = array(2, 3, 4, 5, 6);
if (array_intersect($arr1, $arr2)) {
    // good, at least one match found
}

但是,问题是性能。在找到第一个匹配项后继续循环遍历数组是没有意义的。是否有本地 PHP 函数或有用的代码片段可以实现此目的?

foreach()in_array() 的组合可以解决问题吗?

最佳答案

这个怎么样?

foreach ($arr1 as $key => $val) {
    if (in_array($val, $arr2)){
        // do something, maybe return so you wouldn't need break
        break;
    }
}

关于PHP array_intersect() 直到第一个匹配,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17864286/

相关文章:

php - 如何在 PHP 中创建 cURL POST 请求

php - 刷新后保留选择列表选项

javascript - 合并两个 Javascript 对象,其中每个键包含多个值

PHP 循环并重建按值(主题)输出 JSON 分组的数组

android - 在 Kotlin 中更改可变列表中的值

php - WooCommerce SQL 查询查找具有特定元键和元值的产品

php - SaaS方式访问多个数据库和master数据库的用户认证机制

javascript - [] + {} 等于 [object Object],在 JavaScript 中?如何?

java - 在 Actionscript 3 中从 Java Servlet 接收 ByteArray

c - Noob C 帮助 - 在开关/外壳内循环?