Сокращение для цикла в переполнении стека

У меня есть трехстрочный код:

echo '<div>';
for ($i=1; $i<=4; $i++) echo $i;
echo '</div>';

Есть ли синтаксис или функция, позвольте мне переписать приведенный выше код только в одной строке, например:

echo '<div>'.(for...).'</div>'; //error

Спасибо

-2

Решение

Да, это возможно, нет, вы не хотите делать это:

echo '<div>' . implode('', array_keys(array_fill(1,4,0))) . '</div>';
1

Другие решения

Хотя удобочитаемость является полностью личным мнением, существуют «общие» методы, рекомендации и стандарты кодирования, которые используются многими разработчиками.

И пока ты не необходимость придерживаться их, это всегда зависит от вас или компании, в которой вы работаете, некоторые из этих «способов» являются просто здравым смыслом, независимо от вашего личного выбора.

Даже если бы был способ сделать это, чего бы вы хотели?
Как далеко вы хотите пойти, смешивая вещи для предполагаемый читаемость?

echo и loop это совершенно разные вещи, и должны оставаться отдельными.

Ответ

Отвечая на ваш вопрос, нет, это невозможно, потому что PHP должен различать разные «вещи» — функции, операторы echo, объявление и использование переменных и т. Д.
Единственное, что вы можете «смешать» — это то, что PHP позволяет быть вместе, как иметь переменную в скобках функции (function($someVar)).

Единственное, что вы можете сделать (и опять же, это не имеет никакого смысла, кроме вашего выбора), это поместить все это в одну строку, вот так:

echo '<div>'; for ($i=1; $i<=4; $i++) { echo $i; } echo '</div>';

Но это выглядит ужасно.
я бы хотел быстро вижу разные вещи — «ах эхо, оно печатает XYZ», то я хочу увидеть цикл по отдельности так что я могу легко видеть, что делает цикл.

0

По вопросам рекламы [email protected]