Удалить дубликаты из массива PHP

Мой PHP-скрипт возвращает некоторый массив, и я хотел бы удалить дубликаты в этом массиве. Не могли бы вы рассказать мне, как это сделать? Я не хочу удалять дубликаты из MySQL, только с PHP. Я видел некоторые вопросы, подобные этому, но я не мог найти способ реализовать ответы.

Мой PHP:

$con = mysqli_connect($host, $user, $pwd, $db); if(mysqli_connect_errno($con)) { die("Failed to connect to MySQL: " . mysqli_connect_error()); } $sql = "SELECT Grad, Predmet FROM lista"; $result = mysqli_query($con, $sql); $rows = array(); while($row = mysqli_fetch_array($result, MYSQLI_ASSOC)) { $rows[] = $row; } mysqli_close($con); $rows = (object) array('lista' => $rows); echo json_encode($rows); 

И скрипт возвращает это:

 {"lista":[{"Grad":"Beograd","Predmet":"matematika"},{"Grad":"Novi_Sad","Predmet":"matematika"},{"Grad":"Beograd","Predmet":"matematika"},{"Grad":"Novi_Sad","Predmet":"matematika"},{"Grad":"Beograd","Predmet":"informatika"},{"Grad":"Beograd","Predmet":"informatika"}]} 

Замените это:

 $rows = (object) array('lista' => $rows); echo json_encode($rows); 

С этим:

 $lista = array_map('unserialize', array_unique(array_map('serialize', $rows))); echo json_encode((object) array('lista' => $lista)); 

попробуйте эту функцию http://php.net/manual/en/function.array-unique.php

 array array_unique ( array $array [, int $sort_flags = SORT_STRING ] ) 

Пример из документации php.net:

 <?php $input = array("a" => "green", "red", "b" => "green", "blue", "red"); $result = array_unique($input); print_r($result); ?>