在PHP变量中定义html代码

时间:2011-09-05 08:59:37

标签: php html variables

我想在php变量中包含html代码。 我记得有一种方法可以在php变量中定义html代码,类似于:

<?php $my_var = { ?>
<div>SOME HTML</div>
<?php } ?>

我在PHP.net找到了它,但我现在找不到它。 还有其他东西而不是"{",但我不记得确切。 我想直接写上面的html代码,所以不喜欢这样:$my_var = '<div>SOME HTML</div>'; 有什么想法吗?

8 个答案:

答案 0 :(得分:50)

试试这个:

<?php ob_start(); ?>
<div>HTML goes here...</div>
<div>More HTML...</div>
<?php $my_var = ob_get_clean(); ?>

这样您就可以保留HTML的语法高亮显示。

答案 1 :(得分:36)

<?php
$my_var = <<<EOD
<div>SOME HTML</div>
EOD;
?>

它被称为heredoc语法。

答案 2 :(得分:8)

将HTML保存在单独的文件中:example.html.然后将文件内容读入变量

$my_var = file_get_contents('example.html');

答案 3 :(得分:2)

如果您不关心HTML语法高亮,那么您可以定义一个普通变量。您不必转义HTML,因为PHP允许您使用单引号来定义变量,这意味着您可以在HTML代码中使用双引号。

$html = '
 <p>
  <b><i>Some html within a php variable</i><b>
 </p>
 <img src="path/to/some/boat.png" alt="This is an image of a boat">
' ;

对我而言非常适合,但我认为这是一个偏好和实施的问题。

答案 4 :(得分:2)

如果你要回应内容,那么另一种方法就是使用函数

这也有使用语法高亮的程序的附加好处。

function htmlContent(){
?>
    <h1>Html Content</h1>
<?php
}


htmlContent();
?>

答案 5 :(得分:0)

要在PHP变量中定义HTML代码:

1)使用功能(参考:@ RedSparr0w)

<?php
function htmlContent(){
?>

    <h1>Html Content</h1>

<?php
}
?>

2。存储在变量中

$var = htmlContent();

答案 6 :(得分:0)

如何使用这个数组,在 html 的 tr, td 部分,并将这个 html 内容分配给一个 php 变量 $data。

$student = [
'saurabh' => 26,
'John' => 20,
'Ross' => 30 
];

<!DOCTYPE html>
<html>
<head>
<style>
table{
  border: 1px solid black;
}
.lft {
    padding: 0px 80px 10px 5px;
}
td {
    border-bottom: 2px solid black;
}
</style>
</head>
<body>
<table>
  <tr>
    <th>Name</th>
    <th>Age</th>
  </tr>
  <tr>
    <td>Saurabh</td>
    <td>26</td>
  </tr>
</table>
</body>
</html>

答案 7 :(得分:-1)

使用var中的函数添加到提到的几个答案中。我可以建议一个anonymous function。我不是php向导,所以如果我输入错了,请更正我,但是我可以想象它能像下面这样工作:

<?php
$my_var = function(){
   ?>
   <div>SOME HTML</div>
   <?php
};

// Display content
$my_var();

要进一步扩展,如果html中需要其他php内容,则可以通过几种不同的方式进行传递。

$method1 = "Title"; // Will be the same for every instance 
$method2 = "default content"; // Can change for each instance
$my_var = function($unique=$method2/*set default*/) use ($method1){
   ?>
   <h1><?php echo $prop1; ?></h1>
   <div><?php echo $unique; ?></div>
   <?php
};

// Display content

$my_var();
//returns

标题

默认内容
$my_var("Some unique content");
//returns

标题

一些独特的内容