如何在PHP中搜索部分数组值
首先,为ansvers提供thx 我有两个阵列: 例如:如何在PHP中搜索部分数组值,php,Php,首先,为ansvers提供thx 我有两个阵列: 例如: ['a' => abc, 'b' => cde] 第二个呢 ['fcb' => cde, 'avm' => efg] 需要有“b”和“cde”的真值 怎么会有某种相似性呢?我可能掉进了陷阱;但是,您可以计算交点(公共值)并循环它们并搜索关键字: $result = array_intersect($array1, $array2); foreach($result as $val) { echo "$
['a' => abc, 'b' => cde]
第二个呢
['fcb' => cde, 'avm' => efg]
需要有“b”和“cde”的真值
怎么会有某种相似性呢?我可能掉进了陷阱;但是,您可以计算交点(公共值)并循环它们并搜索关键字:
$result = array_intersect($array1, $array2);
foreach($result as $val) {
echo "$val found in array1 at key: " . array_search($val, $array1)."<br>\n";
echo "$val found in array2 at key: " . array_search($val, $array2)."<br>\n";
}
$result=array\u intersect($array1,$array2);
foreach(结果为$val){
echo“$val在数组1中的键处找到:”.array_search($val,$array1)。“
\n”;
echo“$val在array2中的键:”.array\u search($val,$array2)。“
\n”;
}
请参阅。假设您希望根据“b”在两种情况下都应匹配的要求对键和值执行字符串搜索:
$a = ['a' => 'abc', 'b' => 'cde'];
$b = ['fcb' => 'cde', 'avm' => 'efg'];
function search($needle, $haystack)
{
foreach(array_merge($haystack, array_keys($haystack)) as $value)
{
if (strpos($value, $needle) !== FALSE)
{
return TRUE;
}
}
return FALSE;
}
echo (int) search('b', $a);
echo (int) search('b', $b);
echo (int) search('z', $a);
echo (int) search('z', $b);
echo (int) search('cde', $a);
echo (int) search('cde', $b);
输出:
110011
['a'=>abc,'b'=>cde]
你错过报价了吗?更新-抱歉!你说的是关键还是价值?这一点都不清楚,很可能会被关闭。你想做什么?你的问题不清楚。请阅读。