Это где-нибудь рядом с чем-то приемлемым?Мне нужна функция для каждого тега HTML, и они должны быть определены для последующего использования в строке Heredoc.Пока это мой код.
<?php
$tags = array (h1, h2, h3, b, i);
foreach ($tags as $key => $value)
{
eval ('function '.$value.' ($str) { return "<'.$value.'>$str</'.$value.'>"; }');
}
Это в основном решает проблему Heredoc, касающуюся функций внутри heredoc.Быстрый пример:
<<<example
<h1>This is ordinary HTML</h1>
{$h1('This is HTML via. PHP')}
example;
Я сделал весь код наизусть, поэтому, пожалуйста, не удивляйтесь, если они содержат какие-либо ошибки.Я еще не выполнил функцию eval, но она выглядит хорошо.Во всяком случае, мой вопрос будет: это хорошо, или лучше пойти и сделать это трудным путем:
function h1 ($str) { return ...; }
function h2 ($str) { return ...; }
function h3 ($str) { return ...; }
function b ($str) { return ...; }
function i ($str) { return ...; }
И так далее?