php - 做一个 PHP in_array() 但用一个针另一个 array()

标签 php

如果 $foo 中至少有一个在 $bar 数组中,我需要类似 in_array() 的搜索,例如:

$foo = array("ESD", "RED", "IOP");
$bar = array("IOD", "MNP", "JDE", "RED");

if(in_array($foo, $bar)) // true because RED is in $foo and in $bar

提前致谢!

最佳答案

我想你想要array_intersect():

$matches = array_intersect($foo, $bar);

$matches 将返回两个数组中所有项目的数组,因此您可以:

  • 检查是否没有匹配 empty($matches)
  • count($matches)读取匹配数
  • 如果需要,读取交叉点的值

引用:http://php.net/manual/en/function.array-intersect.php

您的案例示例:

$foo = array("ESD", "RED", "IOP");
$bar = array("IOD", "MNP", "JDE", "RED");

// Just cast to boolean
if ((bool) array_intersect($foo, $bar)) // true because RED is in $foo and in $bar

关于php - 做一个 PHP in_array() 但用一个针另一个 array(),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5910665/

相关文章:

javascript - 一次从选择选项中获取两个值

javascript - 如何根据一个值过滤值并替换为相应的名称

php - 如何知道MySQL是否返回0

php - 如何将特征与与继承的静态方法冲突的非静态方法一起使用?

php - 在 PHP 中创建一个真正的灰度 PNG

PHP sql不返回所有值

php - open_basedir,File() 不在允许的路径内

php - CakePHP 可包含的搜索

php - 如何在 PHP 中生成密码,就像在 Ruby on Rails 中通过 Devise Gem 所做的那样

php - 如何在显示数据库中的动态数据时修复布局