Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757
Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770
Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/topic.php on line 737 Форумы портала PHP.SU :: Как перемешать массив?
В общем след. последовательность: первый элемент, последний, 2 элемент, предпоследний (2 с конца) и т.д. (Добавление)
Всё, разобрался, кому интересно, вот код:
Покинул форум
Сообщений всего: 11926
Дата рег-ции: Июль 2009 Откуда: Россия, Санкт-Петербург
Помог: 618 раз(а)
Морозов Семен пишет:
array_unique($new_array);
Вы уверены, что это нужно и нужно именно последним шагом?
Напишите тест на массив с нечётным количеством элементов. Там бага мне кажется.
И, наверное, имеет смысл сбросить ключи приходящего массива через array_values. Мало ли вы ассоциативный массив передадите, или окажется пропуск в ключах.
И, главное, обратите внимание на пункт 7.1 действующих правил.
----- PostgreSQL DBA
Sail
Отправлено: 25 Ноября, 2015 - 13:12:01
Участник
Покинул форум
Сообщений всего: 1131
Дата рег-ции: Февр. 2014
Покинул форум
Сообщений всего: 105
Дата рег-ции: Март 2012
Помог: 0 раз(а)
Мелкий пишет:
Вы уверены, что это нужно и нужно именно последним шагом?
При нечетном кол-ве элементов массива, последний элемент продублирован. Эта строчка кода исправляет. В данном случае повторений не будет это id товаров (уникальный)
Данный скрипт нужен для перемешивания цен товаров.
Сначала сортировка по ценам в mysql -> массив id товаров -> перемешивание id
Протестировал при четном и нечетном, всё ок. (Добавление)
Все гости форума могут просматривать этот раздел. Только зарегистрированные пользователи могут создавать новые темы в этом разделе. Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.