PHP: идеальный строковый метод

#php

#php

Вопрос:

Я новичок в PHP, и мне было интересно, какой идеальный метод превратить текст в инструкции else ниже в код. Я думаю, что мой старый способ избежать каждой кавычки с помощью « кажется не лучшим способом, так как бы вы это сделали?

 <?php
if (strlen($finalArray['Lat']) <= 0){

} 
else 
{
<a name="openframe"></a>
Loc: <br/>
<a href="#xmap" onclick="spoiliut('pmap');" title="<?php echo $finalArray['Name']; ?>" target="_self"><strong> <?php echo $finalArray['Name']; ?> </strong>
</a>
?>
  

Спасибо за советы.

Ответ №1:

Два варианта, первый выглядит следующим образом: (Это работает, потому что операторы if переносятся между тегами php)

 <?php
if (strlen($finalArray['Lat']) <= 0)
{

} 
else 
{
?>

<a name="openframe"></a>
Loc: <br/>
<a href="#xmap" onclick="spoiliut('pmap');" title="<?php echo $finalArray['Name']; ?>" target="_self"><strong> <?php echo $finalArray['Name']; ?> </strong>
</a>

<?php
}
?>
  

И второй — это синтаксис Heredoc
Это выглядит как:

 <?php
if (strlen($finalArray['Lat']) <= 0)
{

} 
else 
{
    echo <<<EOF
    <a name="openframe"></a>
    Loc: <br/>
    <a href="#xmap" onclick="spoiliut('pmap');" title="{$finalArray['Name']}" target="_self"><strong> {$finalArray['Name']} </strong>
    </a>
EOF;
}
?>
  

Ответ №2:

PHP можно смешивать с HTML. Вы могли бы сделать это:

 <?php if (strlen($finalArray['Lat']) <= 0) : ?>
    <p>some html</p>
<?php else : ?>
    <a name="openframe"></a>
    Loc: <br/>
    <a href="#xmap" onclick="spoiliut('pmap');" title="<?= $finalArray['Name'] ?>" target="_self"><strong> <?= $finalArray['Name'] ?> </strong>
    </a>
<?php endif ; ?>
  

Комментарии:

1. Вау, это ускорит мой рабочий процесс! Спасибо вам всем за отличные примеры.

2. @Michael, ты мог бы выразить свою признательность голосованием «за». 😉 Кстати, я отредактировал свой ответ, чтобы показать короткий тег PHP echo. Это тоже ускорит работу!

Ответ №3:

 <?php
if (strlen($finalArray['Lat']) <= 0){

} 
else 
{
?>
<a name="openframe"></a>
Loc: <br/>
<a href="#xmap" onclick="spoiliut('pmap');" title="<?php echo $finalArray['Name']; ?>" target="_self"><strong> <?php echo $finalArray['Name']; ?> </strong>
</a>