Как я могу удалить повторяющиеся значения из массива в PHP?
156
Как я могу удалить повторяющиеся значения из массива в PHP?
Используйте array_unique () .
Пример:
$array = array(1, 2, 2, 3);
$array = array_unique($array); // Array is now (1, 2, 3)
Note that array_unique() is not intended to work on multi dimensional arrays.
$array = array_unique($array, SORT_REGULAR);
использование
array_values(array_unique($array));
array_unique
: для уникального массиваarray_values
: для переиндексацииисточник
array_unique
возвращает объект с парами ключ и значение Иarray_values
возвращает только значения в виде массива.источник
Единственное, что сработало для меня:
Редактировать:
SORT_REGULAR
сохраняет тот же порядок исходного массива.источник
источник
иногда
array_unique()
это не так, если вы хотите получить уникальные и дублированные предметы ...результаты на
источник
Мы можем создать массив такого типа, чтобы использовать это последнее значение, которое будет обновлено до значения столбца или ключа, и мы получим уникальное значение из массива ...
источник
explode(",", implode(",", array_unique(explode(",", $YOUR_ARRAY))));
Это позаботится о связях ключей и сериализует ключи для получающегося нового массива :-)
источник
explode("," $YOUR_ARRAY)
когда$YOUR_ARRAY
этоarray("1", "2", "3")
?В зависимости от размера вашего массива я нашел
может быть быстрее, чем array_unique.
источник
Это отличный способ сделать это. Возможно, вы захотите убедиться, что его вывод снова возвращается в массив. Теперь вы показываете только последнее уникальное значение.
Попробуй это:
источник
впервые проверить значение в массиве и найти то же значение игнорировать его
источник
Удалите повторяющиеся значения из ассоциативного массива в PHP.
Массив ([0] => aaa-aaa [1] => 12/1/1 [2] => 1.15)
источник
Там может быть несколько способов сделать это, а именно:
источник
Если вы относитесь к производительности и имеете простой массив, используйте:
Это во много раз быстрее, чем array_unique.
источник
источник
источник
источник
попробуйте этот короткий и сладкий код -
Вывод -
источник
if
.источник
Здесь я создал второй пустой массив и использовал
for
цикл с первым массивом, который имеет дубликаты. Он будет работать столько же времени, сколько и счет первого массива. Затем сравнивается с позицией массива с первым массивом и сопоставляется с тем, есть ли у него этот элемент уже или нет с помощьюin_array
. Если нет, то он добавит этот элемент во второй массив сarray_push
.источник
foreach
цикл?foreach
потому что я очень доволен циклом for. Вот и все.Это можно сделать через функцию, которую я сделал, три функции дубликата возвращают значения, которые дублируются в массиве.
Вторая функция single возвращает только те значения, которые являются единичным средним значением, не повторяется в массиве, а третья и полная функция возвращают все значения, но не дублируются, если любое значение дублируется, оно преобразует его в single;
источник
ref: Демо
источник
Альтернатива для функции array_unique ().
Использование алгоритма грубой силы
источник
Я сделал это без использования какой-либо функции.
источник