有没有一种方法可以将html分配给php变量而不丢失其标记?

时间:2020-01-18 23:46:31

标签: php html variables markup

我正试图以这种方式将一些html分配给php中的变量,以使我的html模块化。

$html_block1 = "<div class='item'>
      <img src='chicago.jpg' alt='Chicago'>
      <div class='carousel-caption'>
        <h3>Chicago</h3>
        <p>Thank you, Chicago!</p>
      </div>
    </div>" 

HTML特定的标记丢失了,因为每个文本编辑器都将其视为简单的字符串,而不是html。这使得以后的编辑非常不切实际。有没有一种方法可以将该html存储在php文件中,而又不会丢失标记,而这种标记以后可以被其他文件轻易使用?谢谢。

1 个答案:

答案 0 :(得分:0)

或者,您可以使用Output Control Functions

您的代码变为:

<?php
ob_start();
?>

<div class='item'>
  <img src='chicago.jpg' alt='Chicago'>
  <div class='carousel-caption'>
    <h3>Chicago</h3>
    <p>Thank you, Chicago!</p>
  </div>
</div>

<?php 
$html_block1 = ob_get_clean();

这种方式还允许您将HTML模板移至视图文件:

script.php

<?php
ob_start();
require VIEW_FOLDER . '/my_view.php';
$html_block1 = ob_get_clean();

my_view.php

<div class='item'>
  <img src='chicago.jpg' alt='Chicago'>
  <div class='carousel-caption'>
    <h3>Chicago</h3>
    <p>Thank you, Chicago!</p>
  </div>
</div>

如果要执行此类操作,则应考虑研究模板引擎,例如Twig