PHP / MySQL - как вставить дополнительные элементы в массив в цикле «пока»?

Я извлекаю информацию из базы данных mySQL, но мне нужно добавить дополнительные поля, которых нет в базе данных.

Приведенный ниже код работает нормально, пока не будет включен один из прокомментированных параметров:

$sth =  mysqli_query($db_connect,$sql); 
while($r3 = mysqli_fetch_assoc($sth)) {
    //array_push($r3, 'str_close'=>$est_close_time);
    //$r3['str_close']=>$est_close_time;
    $row_v3_data[]=$r3;
}

После включения php показывает «Ошибка 500».

разве ваши значения не заменяются в массиве $row_v3_data[] ???

Er. Amit Joshi 20.09.2018 13:41

Если выдается ошибка 500, в журнал ошибок сервера большую часть времени что-то записывается. Можете ли вы найти это сообщение и добавить его к вопросу?

Nico Haase 20.09.2018 13:46

Эки, ты проверил ответ?

Anant Kumar Singh 21.09.2018 12:11

Вопрос решен, всем спасибо! Мне просто нужно было использовать " = " вместо "=>"

Eki 22.09.2018 01:50
Стоит ли изучать PHP в 2026-2027 годах?
Стоит ли изучать PHP в 2026-2027 годах?
Привет всем, сегодня я хочу высказать свои соображения по поводу вопроса, который я уже много раз получал в своем сообществе: "Стоит ли изучать PHP в...
Symfony Station Communiqué - 7 июля 2023 г
Symfony Station Communiqué - 7 июля 2023 г
Это коммюнике первоначально появилось на Symfony Station .
Оживление вашего приложения Laravel: Понимание режима обслуживания
Оживление вашего приложения Laravel: Понимание режима обслуживания
Здравствуйте, разработчики! В сегодняшней статье мы рассмотрим важный аспект управления приложениями, который часто упускается из виду в суете...
Установка и настройка Nginx и PHP на Ubuntu-сервере
Установка и настройка Nginx и PHP на Ubuntu-сервере
В этот раз я сделаю руководство по установке и настройке nginx и php на Ubuntu OS.
Коллекции в Laravel более простым способом
Коллекции в Laravel более простым способом
Привет, читатели, сегодня мы узнаем о коллекциях. В Laravel коллекции - это способ манипулировать массивами и играть с массивами данных. Благодаря...
Как установить PHP на Mac
Как установить PHP на Mac
PHP - это популярный язык программирования, который используется для разработки веб-приложений. Если вы используете Mac и хотите разрабатывать...
2
4
49
2
Перейти к ответу Данный вопрос помечен как решенный

Ответы 2

Ответ принят как подходящий

Самый простой способ - добавить другие данные в $r3 перед добавлением их в массив.

$sth =  mysqli_query($db_connect,$sql); 
while($r3 = mysqli_fetch_assoc($sth)) {
    $r3['str_close'] = $est_close_time;
    $row_v3_data[]   = $r3;
}

This assumes $est_close_time actually exists before using it

Единственная вариация этого ответа, заменяющая $r3['str_close'] = $est_close_time; $row_v3_data[] = $r3;. это $row_v3_data[] = array('str_close' => $est_close_time, $r3) или для PHP 5.4+ $row_v3_data[] = ['str_close' => $est_close_time, $r3];

Raymond Nijland 20.09.2018 13:40

Спасибо, что это была идея, я просто не думал об использовании «=» вместо «=>». Это прекрасно работает!

Eki 22.09.2018 01:37

Удивительно то, что он добавляется в конец массива $ r3, но работает независимо.

Eki 22.09.2018 01:48

вы можете одновременно добавить ключ и элемент в ассоциативный массив. формат просто:

$r3['str_close'] = $est_close_time;

нет необходимости в явном нажатии

Другие вопросы по теме