Как я могу повторить HTML в PHP? - PullRequest
113 голосов
/ 09 июля 2009

Я хочу условно вывести HTML для генерации страницы, так какой же самый простой способ отобразить многострочные фрагменты HTML в PHP 4+? Нужно ли использовать шаблонный фреймворк, такой как Smarty?

echo '<html>', "\n"; // I'm sure there's a better way!
echo '<head>', "\n";
echo '</head>', "\n";
echo '<body>', "\n";
echo '</body>', "\n";
echo '</html>', "\n";

Ответы [ 12 ]

1 голос
/ 24 февраля 2015

не отображать HTML

, если вы хотите использовать

<?php echo "<h1>  $title; </h1>"; ?>

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

<h1><?= $title;?></h1>
1 голос
/ 02 августа 2013

В дополнение к ответу Криса Б. , если вам все равно нужно использовать echo, вы все равно хотите сохранить его простым и структурированным и не хотите спамить код с помощью <?php stuff; ?>, Вы можете использовать синтаксис ниже.

Например, вы хотите отобразить изображения галереи:

foreach($images as $image)
{
    echo
    '<li>',
        '<a href="', site_url(), 'images/', $image['name'], '">',
            '<img ',
                'class="image" ',
                'title="', $image['title'], '" ',
                'src="', site_url(), 'images/thumbs/', $image['filename'], '" ',
                'alt="', $image['description'], '"',
            '>',
        '</a>',
    '</li>';
}

Echo принимает несколько параметров, поэтому с хорошим отступом это выглядит довольно хорошо. Также использование echo с параметрами более эффективно, чем объединение.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...