Jeremy
Jeremy

Reputation: 973

Removes values of one array from another

Say I have these two array:

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

$arrayB = array(10590);

What I know, is that,

  1. values of $arrayB will always be elements from $arrayA
  2. $arrayB may have one or more elements

I need to remove the values of $arrayB from $arrayA.

Means, I need a new array as:

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

if $arrayB = array(10590, 10604), $arrayC will be:

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

Any idea ?

Upvotes: 0

Views: 37

Answers (1)

John Conde
John Conde

Reputation: 219804

Use array_diff()

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

Example:

$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) }

See it in action

Upvotes: 3

Related Questions