Не могу разобраться, как получить список категорий из массива без дублей.
Получать нужно из базы нормальный список, без дублей. В вашем случае это будет запрос с дистинкт, как написал
roswell, однако:
1) Запросы с дистинкт будут перебирать всю таблицу, что плохо и медленно
2) Если у вас категории пишутся в таблицу ньюс, значит у вас лажа со структурой бд. Категории должны лежать отдельной справочной таблицей, выборка из которой будет во первых в разы быстрее, а во вторых будет удовлетворять
третьей нормальной форме (3NF).
3) Текущая структура не позволяет задать более 1 категории на новость.
Есть еще куча проблем с таким хранением, но это уже другой вопрос.