array_unique removes duplicate values from an array. Unfortunately it doesn’t work with multi-dimensional arrays.
A quick workaround is to serialize all elements of the first/parent array in order to make it unidimensional, let array_unique doing its job and then unserialize it back.
A one liner for this is:
$uniqueArray = array_map("unserialize", array_unique(array_map("serialize", $nonUniqueArray)));