Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/263.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在PHP中的变量内存储内联HTML_Php_Html_Variables - Fatal编程技术网

在PHP中的变量内存储内联HTML

在PHP中的变量内存储内联HTML,php,html,variables,Php,Html,Variables,我想知道,主要是因为我想我以前在某个地方见过它,是否可以在变量中存储HTML,类似于以下内容(我知道这毫无意义,只是为了澄清我的问题): 然后,$var将等于文本在这里您可能会想到: 您可以使用输出缓冲来实现这一点。请看和中的示例 各种各样的东西,可能是一些等等。 查看XHP,这是一种允许PHP代码中包含XML文本的语言。如果可能,您应该避免这种情况。将PHP嵌入HTML而不是反之亦然。“将PHP嵌入HTML而不是反之亦然。”O RLY?@Felix Kling:为什么建议将PHP嵌入HT

我想知道,主要是因为我想我以前在某个地方见过它,是否可以在变量中存储HTML,类似于以下内容(我知道这毫无意义,只是为了澄清我的问题):


然后,
$var
将等于
文本在这里

您可能会想到:


您可以使用输出缓冲来实现这一点。请看和中的示例


各种各样的东西,可能是一些等等。

查看XHP,这是一种允许PHP代码中包含XML文本的语言。

如果可能,您应该避免这种情况。将PHP嵌入HTML而不是反之亦然。“将PHP嵌入HTML而不是反之亦然。”O RLY?@Felix Kling:为什么建议将PHP嵌入HTML而不是反之亦然?@Nightwolf:因为创建无休止的HTML字符串容易出错(例如,转义引号)。如果使用IDE,则很可能会丢失语法突出显示。诚然,使用herdoc可能没有那么糟糕,但是几乎没有理由不以“正常”的方式编写HTML,而只是
echo
数据应该在哪里。这是一个更好的逻辑和表示分离。@Felix Kling,我想用它来制作新闻稿模板,它需要为我的系统配置php以及HTML模板。我希望这两个都包含在同一个php文件中,而不会丢失我的HTML语法着色。我认为这是一个很好的解决方案。请注意,这将生成字符串
“\t文本在此\n\t”
。注意空格。尾随的
EOD
不应该缩进,它应该在第一列。同样,这样文本前面会有空格。@Eric这是一个很好的观点。不过,自从
EOD之后,我编辑了这些标签(感谢您的初次编辑-我忘了)必须(AFAIR)在行的开头。@Blagovest Buyukliev是的,这是由于编辑冲突:)这就是我要找的,Herdeoc也解决了我的问题,但在Dreamweaver中将代码涂成php的颜色,这是我想要这样做的原因之一。不过还有一件事是需要的,没有
ob_end_clean()原始HTML仍将被输出。或者甚至您也可以使用ob_get_clean()而不是执行ob_get_contents()+ob_end_clean()
<? $var = ' ?>
text goes here
<? '; ?>
<?php
$var = <<<EOD
text goes here
EOD;
?>
<? ob_start(); ?>

All kinds of stuff, maybe some <?= "php"; ?> etc.

<? $var = ob_get_contents(); ?>