'333', 'send_num' => 0, 'make_num' => 0, 'out_num' => 0, 'use_type' => '2', 'instruction_type' => '2' ]; $b = [ 'name' => '777', 'send_num' => 101, 'make_num' => 101, 'out_num' => 0, 'use_type' => 1, 'instruction_type' => 2 ]; echo '
'; print_r(array_diff($a, $b));
为何输出的是:
Array ( [name] => 333 )
个人感觉应该输出的是:
Array ( [name] => 333 [send_num] => 0 [make_num] => 0 [use_type] => 2 )
结果不是,挺奇怪,问题我已经解决了,通过 array_diff_assoc 得到的是先想要的结果,但是就是没搞明白 array_diff 为啥不行。按文档里的解释说 assoc 同时也比较了键名,但是这里的键名都是一样的啊?