стандарты — конечный тег PHP в функциях php и логический файл

Пример кода в вопросе:

<?php
function foo($x) {
?> // <-- PHP end tag in question
<ul>
<li>Coffee</li>
<li>Tea</li>
<li>Milk</li>
</ul>
<?php
return ;
}
?>

Я пытаюсь решить, является ли это приемлемым стандартом кодирования / практикой кодирования в логическом файле PHP, и каковы недостатки этого метода по сравнению с другими html-схемами печати / преобразования.

-5

Решение

Есть документация по PHP Строки который вы найдете очень полезным. Это объясняет разницу между одинарными кавычками, двойными кавычками, heredoc и синтаксисом nowdoc. Я не хочу высказывать свое мнение по этому вопросу, но я не думаю, что метод, который вы продемонстрировали, очень часто используется.

0

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

Логика, которую вы предоставили, не приемлема.

Вы можете сделать это:

<?
function foo($x) {
$var = <<<END
<ul>
<li>Coffee</li>
<li>Tea</li>
<li>Milk</li>
</ul>
END;
echo $var;
}

foo();

// OR You Can do this:
function foo2($x){

$var = <<<END
<ul>
<li>Coffee</li>
<li>Tea</li>
<li>Milk</li>
</ul>
END;
return $var;
}
echo foo2();
//If the function is only intended for printing just use global variables as you haven't used the $x argument..
?>

* Также обратите внимание, что после пробела не должно быть пробелов

<<<END

и до

END;

Из-за этого я не выделил их справа внутри функции.

0

Функция не возвращает значение, поэтому попытка использовать его в сочетании с техническими запросами конкатернизации строки невозможна.

Например:

function bar() {
$concat = "Give me " . foo(null) . " please" ;
}

будет выводить

  • Кофе
  • Чай
  • Молоко
0
По вопросам рекламы [email protected]