As mentioned, array_unique does not support multidimensional arrays, but you can iterate over data and create your own
<?php $airlines = array( array('id' => 'BA', 'name' => 'British Airways'), array('id' => 'LA', 'name' => 'Lanchile'), array('id' => 'BA', 'name' => 'British Airways'), array('id' => 'LA', 'name' => 'Lanchile'), array('id' => 'BA', 'name' => 'British Airways'), array('id' => 'LA', 'name' => 'Lanchile'), ); $tmp = array(); foreach ($airlines as $item) { if (!in_array($item['id'], $tmp)) { $unique[] = $item; $tmp[] = $item['id']; } } var_dump($unique);
source share