Intereting Posts
В случае необходимости для сайта, который объясняет, как использовать PHPUnit Можно ли загрузить изображение в виде вложения с помощью Slack API? получить значение отклика url с curl Использование JavaScript для доступа к массиву JSON из PHP Автоматическое заполнение текстовой области с помощью php curl Заменить диакритические символы «эквивалентным» ASCII в PHP? HTML <Select> <Option> по умолчанию на основе данных MySQL PHP – клиент SOAP не может вызывать конечную точку HTTPS Обработка ввода с помощью Zend Framework за пределами MVC Как получить неквалифицированное (короткое) имя класса объекта? Как загрузить фотографию в конкретный альбом, а если нет, создайте этот альбом? Ошибки при обновлении joomla 2.5 до 3.xx Как проверить, существует ли команда оболочки из PHP Обработка относительных путей для включения файлов в PHP Swiftmailer: невозможно установить соединение с узлом smtp.gmail.com

Наложение массива с помощью ассоциированного массива

Если я работаю с подобным массивом вроде:

Array ( [Username] => user [Email] => email ) 

и я хочу добавить элемент в конец, я бы подумал:

 array_push($array, array('Password' => 'pass')); 

Однако это оставляет меня:

 Array ( [Username] => user [Email] => email Array ( [Password] => pass ) ) 

Как этого можно избежать, поэтому я получаю:

 Array ( [Username] => user [Email] => email [Password] => pass ) 

Очень признателен!

Solutions Collecting From Web of "Наложение массива с помощью ассоциированного массива"

Вы используете ассоциативный массив, поэтому вы просто устанавливаете пару ключ / значение, как это.

 $array["Password"] = pass; 

Я думаю, вам, возможно, потребуется просмотреть разницу между массивом и ассоциативным массивом. Например, если я снова запустил ту же команду с другим значением, она перезапишет старую:

 $array["Password"] = "overwritten"; 

Предоставляя вам это

 Array ( [Username] => user [Email] => email [Password] => "overwritten" ) 

Что, судя по вашему вопросу, не то, что вы ожидаете

Попробуйте вместо этого array_merge :

 $array = array('Username' => 'user', 'Email' => 'email'); $array = array_merge($array, array('Password' => 'pass')); 

Это создает массив:

 array('Username' => 'user', 'Email' => 'email', 'Password' => 'pass'); 

Ассоциативные массивы не предназначены для того, чтобы иметь ключи в порядке. Вы можете добавить элемент через

 $array['Password'] = 'pass'; 

Как правило, с ассоциативным массивом у вас нет контроля над порядком элементов.

Элементы могут быть в любом порядке.

Однако я нашел, что php сохраняет порядок, который вы добавляете.

Так что просто $myarra["name"] = "password"