what about array_intersect()  ? if it doesn't work with arraycollection just change it to array ?

And array_diff