Мне нужно удалить повторяющиеся значения из массива.Дедупликация значений многомерного массива
$original_array
Array
(
[0] => 1 500 2 4 100 51 52
[1] => 515 5 500
[2] => 31 351 5 51 61 71 81 91
[3] => 1 57 101
[4] => 191 25 101 102
)
Я думал, что я тогда быть в состоянии взорвать их пространства, чтобы создать многомерный массив, а затем использовать array_unique()
но это не работает.
# Create new array
$new_array = array();
# Loop through original_array
foreach($original_array as $original_array_value)
{
$new_array[] = explode(' ', $original_array_value);
}
print_r($new_array);
Выход:
Array
(
[0] => Array
(
[0] => 1
[1] => 500
[2] => 2
[3] => 4
[4] => 100
[5] => 51
[6] => 52
)
[1] => Array
(
[0] => 515
[1] => 5
[2] => 500
)
[2] => Array
(
[0] => 31
[1] => 351
[2] => 5
[3] => 51
[4] => 61
[5] => 71
[6] => 81
[7] => 91
)
[3] => Array
(
[0] => 1
[1] => 57
[2] => 101
)
[4] => Array
(
[0] => 191
[1] => 25
[2] => 101
[3] => 102
)
)
Конечный результат массив не имеет значения для меня, пока нет повторяющихся значений.
Не уверен, является ли пятнистый вы [мой ответ] (http://stackoverflow.com/a/20604756/1338292) в здесь, но вы может захотеть дать это попробовать :) –
@jack Я просто заметил это, и я ценю альтернативу, но я думаю, что ответ gwillie лучше для производительности. – Draven
Я могу сказать вам, что разница в производительности незначительна и в мою пользу, если вы беспокоились об этом :) Одна из причин заключается в том, что 'array_unique()' необходимо выполнить сортировку в первую очередь. –