0

假设我有这两个数组:

$arraryA = array(10587,10590,10598,10592,10602,10604,10607);

$arrayB = array(10590);

我所知道的是,

  1. $arrayB 的值总是来自 $arrayA 的元素
  2. $arrayB 可能有一个或多个元素

我需要从 $arrayA 中删除 $arrayB 的值。

意味着,我需要一个新数组:

$arrayC = 数组(10587,10598,10592,10602,10604,10607);

如果$arrayB = array(10590, 10604), $arrayC 将是:

$arrayC = array(10587,10598,10592,10602,10607);

任何的想法 ?

4

1 回答 1

3

采用array_diff()

$arrayC= array_diff($arrayA, $arrayB);

示例

$arrayA = array(10587,10590,10598,10592,10602,10604,10607);
$arrayB  = array(10590);
$arrayC  = array_diff($arrayA, $arrayB);

var_dump($arrayC);

// array(6) { [0]=> int(10587) [2]=> int(10598) [3]=> int(10592) [4]=> int(10602) [5]=> int(10604) [6]=> int(10607) }

看到它在行动

于 2013-03-04T19:46:48.807 回答