У меня есть трехстрочный код:
echo '<div>';
for ($i=1; $i<=4; $i++) echo $i;
echo '</div>';
Есть ли синтаксис или функция, позвольте мне переписать приведенный выше код только в одной строке, например:
echo '<div>'.(for...).'</div>'; //error
Спасибо
Да, это возможно, нет, вы не хотите делать это:
echo '<div>' . implode('', array_keys(array_fill(1,4,0))) . '</div>';
Хотя удобочитаемость является полностью личным мнением, существуют «общие» методы, рекомендации и стандарты кодирования, которые используются многими разработчиками.
И пока ты не необходимость придерживаться их, это всегда зависит от вас или компании, в которой вы работаете, некоторые из этих «способов» являются просто здравым смыслом, независимо от вашего личного выбора.
Даже если бы был способ сделать это, чего бы вы хотели?
Как далеко вы хотите пойти, смешивая вещи для предполагаемый читаемость?
echo
и loop
это совершенно разные вещи, и должны оставаться отдельными.
Отвечая на ваш вопрос, нет, это невозможно, потому что PHP должен различать разные «вещи» — функции, операторы echo, объявление и использование переменных и т. Д.
Единственное, что вы можете «смешать» — это то, что PHP позволяет быть вместе, как иметь переменную в скобках функции (function($someVar)
).
Единственное, что вы можете сделать (и опять же, это не имеет никакого смысла, кроме вашего выбора), это поместить все это в одну строку, вот так:
echo '<div>'; for ($i=1; $i<=4; $i++) { echo $i; } echo '</div>';
Но это выглядит ужасно.
я бы хотел быстро вижу разные вещи — «ах эхо, оно печатает XYZ», то я хочу увидеть цикл по отдельности так что я могу легко видеть, что делает цикл.