如何在PHP,html标签中回显

时间:2010-10-14 08:25:50

标签: php html tags echo

我在发布之前经历了这个:

How can I echo HTML in PHP?

仍然无法使其发挥作用。

我试图回应这个:

<div>
 <h3><a href="#">First</a></h3>
 <div>Lorem ipsum dolor sit amet.</div>
</div>
<div>

但是我仍然找不到让标签“”和“消失”的方法,我该怎么做?

11 个答案:

答案 0 :(得分:21)

<?php

echo '<div>
 <h3><a href="#">First</a></h3>
 <div>Lorem ipsum dolor sit amet.</div>
</div>
<div>';

?>

只需将其放在单引号中。

答案 1 :(得分:10)

您是否尝试过基于 heredoc 的解决方案:

echo <<<HTML
<div>
<h3><a href="#">First</a></h3>
<div>Lorem ipsum dolor sit amet.</div>
</div>
<div>
HTML;

答案 2 :(得分:8)

使用给定的第一种机制就可以了。

<?php
  ...
?>
<div>
 <h3><a href="#">First</a></h3>
 <div>Lorem ipsum dolor sit amet.</div>
</div>
<div>
<?php
  ...
?>

答案 3 :(得分:4)

您需要转义",以便PHP不会将它们识别为PHP代码的一部分。您可以使用\转义字符执行此操作。

所以,你的代码看起来像这样:

echo
    "<div>
        <h3><a href=\"#\">First</a></h3>
        <div>Lorem ipsum dolor sit amet.</div>
    </div>
    <div>"

答案 4 :(得分:4)

如果要输出大量HTML,则应考虑使用heredocnowdoc语法。这将允许您编写字符串而无需转义。

echo <<<EOD
You can put "s and 's here if you like.
EOD;

另请注意,因为PHP是嵌入式语言,您可以在HTML内容之间添加它,而不需要回显任何标记。

<div>
    <p>No PHP here!</p>
    <?php
    $name = "Marcel";
    echo "<p>Hello $name!</p>";
    ?>
</div>

此外,如果您只想输出变量,则应使用短手输出标记<?=$var?>。这相当于<?php echo $var; ?>

答案 5 :(得分:3)

将HTML与PHP分离是最好的方法。它不那么混乱,也很容易调试。

<?php
  while($var)
  {
?>

     <div>
         <h3><a href="User<?php echo $i;?>"><?php echo $i;?></a></h3>
         <div>Lorem ipsum dolor sit amet.</div>
     </div>

<?php
  $i++;
  }
?>

答案 6 :(得分:2)

您有多种选择。一种是使用PHP作为模板引擎:

<?php 
  // Draw the page
?>
<div>
  <h3><a href="#">First</a></h3>
  <div>Lorem ipsum dolor sit amet.</div>
</div>
<?php
  // Done drawing.
?>

另一种方法是使用单引号,这样可以让双引号不加引号并支持文字中的换行:

<?php
  echo '<div>
  <h3><a href="#">First</a></h3>
  <div>Lorem ipsum dolor sit amet.</div>
</div>';
?>

另一种方法是使用HEREDOC,它保持双引号不变,支持换行,并扩展内部的任何变量:

<?php
  echo <<<EOS
<div>
  <h3><a href="#">First</a></h3>
  <div>Lorem ipsum dolor sit amet.</div>
</div>
EOS;
?>

答案 7 :(得分:1)

不需要使用echo先生只需使用标签。欢迎:))

   <plaintext>
     <div>
       <h3><a href="#">First</a></h3>
         <div>Lorem ipsum dolor sit amet.</div>
     </div>

答案 8 :(得分:1)

你可以替换'&lt;'使用&lt;和'&gt;'与&gt;对于前:

echo "&lt;div&gt;";

输出将显示<div>

对于较长的字符串,

为ex

创建一个函数
function example($input) {
    $output = str_replace('>', '&gt;', str_replace('<', '&lt;', $html));
    return $output;
}

echo example($your_html);

不要忘记使用反斜杠href=\"#\"或使用单引号href='#'执行反斜杠或使用str_replace

更改函数

答案 9 :(得分:0)

这也可以使用双引号。要 echo 任何带有双引号的html_tag,我们只需要记住一件事,不要在中间使用任何其他双引号(“)。

    <?php 

     echo "
    <div>
     <h3><a href='https://stackoverflow.com/questions/3931351/how-to-echo-in-php-html-tags'>First</a></h3>
     <div>Lorem ipsum dolor sit amet.</div>
    </div>
    <div>";
?>

请注意,PHP echo 内部的链接用单引号引起来。这是在为此使用双引号时应采取的预防措施。

答案 10 :(得分:0)

我在这里添加了代码,您希望逐行地添加代码。勾号可以帮助您回显多个行代码。

$html = '<div>';
$html .= '<h3><a href="#">First</a></h3>';
$html .= '<div>Lorem ipsum dolor sit amet.</div>';
$html .= '</div>';
$html .= '<div>';
echo $html;