PHP добавляет в начало массива без изменения порядка
Я пытался найти ответ на свой вопрос, но не смог найти тот, который сделал бы это без изменения порядка числовых индексов.
Есть ли способ добавить строку в начало массива без изменения порядка ключей (числовых ключей) без использования цикла?
Спасибо
РЕДАКТИРОВАТЬ:
Я попытаюсь объяснить сценарий. (Я использую CodeIgniter).
У меня есть массив, который используется во всем моем приложении. Этот массив также используется для создания выпадающего списка и чтобы проверить эти раскрывающиеся значения в форме, которая у меня есть. Что я хотел бы сделать, так это вставить пустое значение в начало массива, чтобы в моем раскрывающемся списке по умолчанию был выбран пустой параметр.
Итак, из этого
1=> Привет
2=>Мир
До
'' => ''
1=> Привет
2=>Мир
1 answers
Поскольку вы не хотите изменять числовые индексы, я предполагаю, что array_unshift
не будет работать.
Так что, возможно, если вы знаете индексы, вы могли бы сделать это так:
$x = array(1 => 1, 2 => 2, 3 => 3);
$y = array(1101 => 123);
var_dump( $y + $x );
/* Output:
array(4) {
[1101]=>
int(123)
[1]=>
int(1)
[2]=>
int(2)
[3]=>
int(3)
}
*/
Обратите внимание, что ключ теперь действительно находится перед массивом, поэтому foreach
будет работать нормально.
Ответ на редактирование:
$x = array(1 => "Hello", 2 => "Welt");
$y = array("" => "");
var_dump($y + $x);
/*
array(3) {
[""]=>
string(0) ""
[1]=>
string(5) "Hello"
[2]=>
string(4) "Welt"
}
*/