首先 - 对于ansvers来说是thx。
我有2个阵列:
例如:
['a' => abc, 'b' => cde]
第二个
['fcb' => cde, 'avm' => efg]
需要使用'b'和'cde'。
如何获得某种相似性?
答案 0 :(得分:0)
我可能陷入困境;但是,您可以计算交点(常用值)并循环它们并搜索密钥:
$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";
}
请参阅Example。
答案 1 :(得分:0)
假设您希望根据您的要求对键和值进行字符串搜索&#39; b&#39;应该在两种情况下都匹配:
$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