Php 如果第二个数组中并没有匹配的值,如何合并两个数组并只获取第一个数组中的值
我有两个阵列:Php 如果第二个数组中并没有匹配的值,如何合并两个数组并只获取第一个数组中的值,php,Php,我有两个阵列: $array1 = [460,471]; $array2 = [193,42,471]; 如果$array2中没有相同的值,如果$array2中有相同的值,我只想在$array1中获取该值,将其过滤掉 如果在$array2中没有相同的可用值,则预期输出: $output = [460, 471] $output = [460] 预期输出为:$array2中存在相同的值: $output = [460, 471] $output = [460] 尝试array\u dif
$array1 = [460,471];
$array2 = [193,42,471];
如果$array2
中没有相同的值,如果$array2
中有相同的值,我只想在$array1
中获取该值,将其过滤掉
如果在$array2
中没有相同的可用值,则预期输出:
$output = [460, 471]
$output = [460]
预期输出为:$array2
中存在相同的值:
$output = [460, 471]
$output = [460]
尝试array\u diff()
函数
$array1 = [460,471];
$array2 = [193,42,471];
$filtered = array_diff($array1,$array2);
print_r($filtered);
在哈希的帮助下,可以很容易地实现同样的效果 首先,尝试将array2的值映射到散列中 例如,
$array2=[193,42471]的每个元素代码>将有一个值将其存在标记为true
现在,对于每个元素是$array1
,请检查其哈希中是否有值。如果它有一个,那么跳过它
因此,在检查之后,您将获得第二个数组中不存在的所有值。您需要做一些适当的研究,并首先自己尝试一下。如果你不能让它工作,回来,告诉我们你已经尝试了什么,预期的结果和你得到了什么结果。请阅读并回答。对不起,我已经尝试过了,但在问题@Magnuseriksson中没有提及。请不要为您的问题添加答案。我已回滚/编辑了您的问题。请写一个新的答案。