Xwab
Форумыnavigate_nextНебольшие вопросы по PHP/MySQL

Как добавить элемент в массив?
Сообщения
BartSMP

Но только добавить !НЕ последним , а, например, вторым?! Т.е имеем массив:

1 элемент
2 элемент
3 элемент

На выходе:

1 элемент
то что мы добавили
2 элемент
3 элемент

18 Апр 2017, 21:07
Jaguar

Приходит на ум так сразу два варианта:
Первый - все это сделать через цикл
Второй - разрезать массив на 2 части, в нужном месте вставить нужный элемент в конец первого массива, и соединить со второй его частью
добавлено спустя 5 минут:
Или юзать функции коих для массивов полно

$first = array( 'a', 'b', 'c', 'd', 'e' ); // исходный массив
$second = array( 'z' ); // может быть и не массив
array_splice( $first, 3, 0, $second ); // вставка с третьей позиции
// $first теперь такой a b c z d e
Не проверял будет ли работать, идея такая, и это самый простой варик на мой взгляд

18 Апр 2017, 21:25
BartSMP

Короче, я в какую-то жопу уже начал уходить.. Писать какие-то индийские коды в 300 строк, а все оказалось просто:

list($file[0], $file[1]) = array($file[1], $file[0]);

//меняем местами элементы массива

Спасибо за хелп

18 Апр 2017, 21:34
Jaguar

BartSMP пишет:
"
list($file[0], $file[1]) = array($file[1], $file[0]);
//меняем местами элементы массива"
ты же вроде хотел вставлять со смещением?

18 Апр 2017, 21:57
BartSMP

Менять элементы можно и с добавлением символа конца строки и символа переноса строки - это и есть смещение

18 Апр 2017, 23:07
Ответить на тему