比较PHP中两个数组的值

比较PHP中两个数组的值,php,arrays,Php,Arrays,嗨,我想比较两个数组的所有值,结果是真或假。我正在使用下面的代码,我认为结果是错误的。但事实并非如此,当最后一行运行时,我希望显示类似的内容 数组([0]=>0) 但是我没有得到任何显示,所以假设php很高兴没有任何区别 我的代码是 $before = array('1', '1', '0', '0', '1', '0' ) ; $after = array('0', '1', '0', '0', '1', '0' ) ; $new_array

嗨,我想比较两个数组的所有值,结果是真或假。我正在使用下面的代码,我认为结果是错误的。但事实并非如此,当最后一行运行时,我希望显示类似的内容

数组([0]=>0)

但是我没有得到任何显示,所以假设php很高兴没有任何区别

我的代码是

        $before = array('1', '1', '0', '0', '1', '0' ) ;
        $after =  array('0', '1', '0', '0', '1', '0' ) ;

        $new_array= array_diff($before,$after);

        print_r ($new_array) ;

当然,数组_diff应该在这里发现差异?任何帮助都将非常感谢

是的,
array_diff
确实发现了差异。它查找以下数组与第一个数组之间的差异。但是,它不会将0与0和1与1进行比较。它只是检查数组1中的每个值是否在数组2中。。。阿兰。此函数返回一个数组,该数组包含在其他数组中找不到的Array1中的所有引用,而不是真/假布尔值

“在$array1中多次出现的情况都以相同的方式处理。”

因此,由于所有元素都有一个0和1,所以所有元素都是“相同的”。

给出了哪些元素在
之前的
$中,而不是
之后的
$中。由于这两个数组都由
'0'
'1'
组成,因此它返回一个空数组

您要查找的是,它同时查看键和值

请注意,您得到的输出将不是
数组([0]=>0)
,而是
数组([0]=>1)
,因为它提供了第一个数组中不存在于另一个数组中的元素

如果希望获得其他输出,则需要执行
array\u diff\u assoc($after,$before)

嗨,我想比较 2个数组,并以true或 假的


这听起来可能很傻,但比较两个不同长度的数组不会产生预期的差异。首先检查数组的长度,如果它们匹配,则使用
array\u diff
。否则,您的差异将始终为空

    $before = array('1', '1', '0', '0', '1', '0' ) ;
    $after =  array('0', '1', '0', '0', '1', '0' ) ;

    $new_array= array_diff_assoc($before,$after);

    print_r ($new_array) ;
$bool = ($array1 == $array2);