@Vladimir-Hetman

Пoчему я не могу поместить тернарник между строками?

Цикл вывoдит значения массива и вставляет классы блоков из массива $blocks.
Но php ругается, почему нельзя ставить тернарик между строками?

$Values = [
"name"     =>  "Имя", 
"age"      =>  "Возраст",
"from"     =>  "Откуда вы",
"colors"   =>  ["Синий", "Белый", "Желтый"],      
"lessons"  =>  ["Математика", "Физика", "Английский"],
"comment"  =>  "Коммент",     
];
 
$blocks =[
"name"     =>  'user',  
"age"      =>  'age',
"from"     =>  'from', 
"colors"   =>  'colors',        
"lessons"  =>  'lessons',
"comment"  =>  'comment',     
];
 
foreach($Values as $key => $items){
echo "<div class=$blocks[$key]> ". is_array($items) ? implode($items) : $items  ."</div>";
}
  • Вопрос задан
  • 119 просмотров
Решения вопроса 1
MvcBox
@MvcBox
Software Engineer [C/C++/JS(for Node.js)/etc]
Но php ругается, почему нельзя ставить тернарик между строками?

Где Вы увидели ошибку о том, что тернарник нельзя ставить между строками?
У вас там будет писать это:
Warning: implode(): Argument must be an array


Внимательно смотрите на приоритет операторов: https://www.php.net/manual/ru/language.operators.p...
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
@basili4-1982
в скобки тенарник возьми и все будет нормально
Ответ написан
Ваш ответ на вопрос

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

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