如何比较两个数组索引并得到不同的字符串?

时间:2014-01-23 10:27:46

标签: php

我有两个数组。我想比较这些数组并找到它们的不同字符串。 防爆。

$a = array('a','c','b','e','x');
$b = array('a','b','c','d','e','f');

我想要在两个数组中都不常见的字符串。

4 个答案:

答案 0 :(得分:1)

<?php
    $a = array('a','c','b','e','x');
    $b = array('a','b','c','d','e','f');

    $c=array_diff($a,$b);
    $d=array_diff($b,$a);
    $e=array_merge($c,$d);
    print_r($e);

Demo

答案 1 :(得分:1)

使用array_diff

$uncommon = array_diff($b,$a) + array_diff($a,$b);
print_r($uncommon);

<强>输出

Array (
     [3] => d
     [5] => f
     [4] => x 
)

<强> DEMO

答案 2 :(得分:1)

这将为您提供两个数组的区别

<?php
$a1 = array('a','c','b','e','x');
$a2 = array('a','b','c','d','e','f');
$difference = array_diff($1, $a2);

print_r($difference);
?>

答案 3 :(得分:1)

array_diff()

执行此操作会向您显示$b但不是$a

中的值
array_diff($b, $a)

执行此操作将显示一个中存在的值,但两个中都不存在

array_merge(array_diff($b, $a), array_diff($a, $b));

所以例如

$a = array('a','c','b','e','x');
$b = array('a','b','c','d','e','f');
$difference = array_merge(array_diff($b, $a),array_diff($a, $b));
print_r($difference);

//outputs Array ( [0] => d [1] => f [2] => x )