$email_users[] = $row;
print_r($email_users);
Результат:
Array (
[0] => Array (
[user_id] => 87436
[username] => Admin
[user_email] => [email protected]
[user_lang] => de
[allowed] => 1 )
[1] => Array (
[user_id] => 68013
[username] => Testuser
[user_email] => [email protected]
[user_lang] => de
[allowed] => 1 )
[2] => Array (
[user_id] => 68013
[username] => Testuser
[user_email] => [email protected]
[user_lang] => de
[allowed] => 1 )
)
Как вы можете видеть, user_id 68013 двойной. Мне нужно удалить двойной массив. Результат должен выглядеть так:
Array (
[0] => Array (
[user_id] => 87436
[username] => Admin
[user_email] => [email protected]
[user_lang] => de
[allowed] => 1 )
[1] => Array (
[user_id] => 68013
[username] => Testuser
[user_email] => [email protected]
[user_lang] => de
[allowed] => 1 )
)
Я прочитал и попробовал несколько решений, которые я нашел в стеке. Например:
Как получить уникальное значение в многомерном массиве
$email_users[] = $row;
$user_ids = array();
foreach ($email_users as $h) {
$user_ids[] = $h['user_id'];
}
$email_users = array_unique($user_ids);
print_r($email_users);
Но print_r только:
Array ( [0] => 87436 [1] => 68013 )
Спасибо за ваше время.
Вы должны получить отличное значение из своего запроса. Используйте SELECT DISTINCT * FROM tablename, и вы получите значение Distinct. Или используйте $ email_users = array_unique ($ email_users, SORT_REGULAR);
array_unique($your_array,SORT_REGULAR)
.