Задать вопрос
@TatianaKrd

Как объединить в один код 2 строчки $array[$key]?

На разных страницах сайта был одинаковый код, отличие только эти 2 строчки. Необходимо объединить в один код на одной странице.
Пожалуйста, подскажите, как объединить эти две строчки в одну?

$array[$key]['ColorGroup'] = join(",", $row['ColorGroup']);

$array[$key] = array_merge(array("Nom1" => 0, "Abs" => 0, "Nom3" => 0, "MarkFirst" => 0, "MarkSecond" => 0, "MarkThird" => 0, "RingWcf" => 0, "RingWcf2" => 0, "RingMono" => 0), $row);
  • Вопрос задан
  • 127 просмотров
Подписаться 2 Простой 5 комментариев
Помогут разобраться в теме Все курсы
  • Skillfactory
    Профессия Fullstack веб-разработчик на JavaScript и PHP
    20 месяцев
    Далее
  • Хекслет
    PHP-разработчик
    10 месяцев
    Далее
  • Нетология
    Веб-разработчик с нуля: профессия с выбором специализации
    14 месяцев
    Далее
Пригласить эксперта
Ответы на вопрос 2
ipatiev
@ipatiev Куратор тега PHP
Потомок старинного рода Ипатьевых-Колотитьевых
Вам надо не "объединить эти строчки в одну," а добавить условие

if (первая форма) {
    $array[$key]['ColorGroup'] = join(",", $row['ColorGroup']);
} else {
    $array[$key] = array_merge(array("Nom1" => 0, "Abs" => 0, "Nom3" => 0, "MarkFirst" => 0, "MarkSecond" => 0, "MarkThird" => 0, "RingWcf" => 0, "RingWcf2" => 0, "RingMono" => 0), $row);
}


Какое условие сделать - мы не знаем, это вам решать. Например, в форме есть какое-то поле, которого нет в другом.

И это будет работать только если отличие действительно только в этой строчке. В чём я сильно сомневаюсь
Ответ написан
Комментировать
@Agrarian
$array[$key] = array_merge(
    array(
        "Nom1" => 0, "Abs" => 0, "Nom3" => 0,
        "MarkFirst" => 0, "MarkSecond" => 0, "MarkThird" => 0,
        "RingWcf" => 0, "RingWcf2" => 0, "RingMono" => 0
    ),
    $row,
    array(
        "ColorGroup" => is_array($row['ColorGroup']) ? join(",", $row['ColorGroup']) : $row['ColorGroup']
    )
);


Если у вас современная версия php то
$array[$key] = array_merge(
    [
        "Nom1" => 0,
        "Abs" => 0,
        "Nom3" => 0,
        "MarkFirst" => 0,
        "MarkSecond" => 0,
        "MarkThird" => 0,
        "RingWcf" => 0,
        "RingWcf2" => 0,
        "RingMono" => 0,
    ],
    $row,
    [
        "ColorGroup" => is_array($row['ColorGroup'] ?? null)
            ? implode(",", $row['ColorGroup'])
            : ($row['ColorGroup'] ?? "")
    ]
);
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы