Как мне что-то повторить, убедившись, что PHP внутри эха выполняется? - PullRequest
1 голос
/ 28 июля 2011

Извините, иногда я плохо объясняю себя.Почему бы мне не начать с самого начала.

У меня есть этот код:

Posted Under <span class="cat-name">
<?php 
   $category = get_the_category();
   echo $category[0]->cat_name; ?>

Я бы хотел убедиться, что на самом деле что-то есть в $ category [0] -> cat_name преждеопубликовать это.Поэтому я решил сделать оператор if \ isset:

<?php 
if (isset($category[0]->cat_name)) echo // This is where I'd put the above code. ?>

Я просто не совсем уверен, как это сделать, очевидно.Я знаю, что должен был бы избежать кавычек, но даже тогда это не работает.Вот что я попробовал:

<?php if (isset($category[0]->cat_name))
     echo "Posted Under <span class=\"cat-name\">
     <?php 
        $category = get_the_category();
        echo $category[0]->cat_name; ?></span>" 
     ?>

Но не повезло.Есть идеи?Есть ли лучший способ добиться этого?Заранее спасибо.

1 Ответ

4 голосов
/ 28 июля 2011

Вы можете смешивать код HTML и PHP, охватывая if() по <?php ... ?> блокам.Для удобства чтения я буду использовать двоеточие вместо скобок.

<?php
    $category = get_the_category();
    // let's be extra safe
    if (isset($category[0]->cat_name)):
?>
    Posted Under <span class="cat-name">
        <?php echo htmlspecialchars($category[0]->cat_name) ?>
    </span>
<?php endif ?>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...