很难解释,如何将HTML内容分配给PHP变量。在HTML内容不是内PHP script.as将HTML内容分配给PHP变量
<?php $a_div = ?><div>Contents goes <b>here</b></div>
很难解释,如何将HTML内容分配给PHP变量。在HTML内容不是内PHP script.as将HTML内容分配给PHP变量
<?php $a_div = ?><div>Contents goes <b>here</b></div>
尝试用ob_get_contents:ob_get_contents()
或ob_get_clean()
<?php ob_start(); ?>
<div>Contents goes <b>here</b></div>
<?php $contents = ob_get_contents(); ?>
可以使用DOMDocument为了解析HTML文件,并得到你所需要的内容。
这些解决方案到底是什么?我不想显示输出。只需使用邮件功能进行邮件发送。 – 2011-04-06 09:54:43
比使用HEREDOC。 – Headshota 2011-04-06 10:17:14
您是否在寻找以令牌终止的块串? http://www.phpf1.com/tutorial/php-heredoc-syntax.html
我能做的最好的。不幸的是你的问题有点含糊。
如果需要的话(通常我使用的HTML模板,通过PHP替换占位符)... 有两种方式:
$testVar = <<<EndOfHtml
<div style="border: 48px solid red">test</div>
EndOfHtml;
print $testVar
更简单的方法,不是太优雅 - 包裹在单引号HTML代码。所以你不必逃避任何双引号:
$test_var = '<div style="border: 48px solid red">test</div>'
对您有帮助吗? :-)
注意全部。错误 – 2011-04-06 08:04:50
我喜欢这个解决方案,但它不在这里工作 – 2011-04-06 08:05:15
请问你可以发布一个工作代码吗? – 2011-04-06 08:05:33
如果其原始的HTML,在它没有PHP,存储在独立的文件中它也不过
$a_div = file_get_contents('email.html');
如果它的PHP文件,HTML与PHP混合则包括使用输出缓冲它就像Robik的回答一样。
ob_start();
include 'mail.template.php';
$a_div = ob_get_contents();
但如果它是比较小的,
$a_div = <<<HERE
<div>Contents goes <b>here</b></div>
HERE;
这有道理,但PHP标签的起始和结束在哪里? – 2011-04-06 07:57:33
<?php $ a_div = <<
@Xcoder就像脚本中的其他地方一样。任何PHP代码之前。结束标记是没有必要的,虽然 – 2011-04-06 08:00:46
为你需要什么我会使用HEREDOC? – 2011-04-06 07:45:27
我真的需要它 – 2011-04-06 07:46:57
电子邮件内容是在HTML中,我想要的是使用邮件()函数 – 2011-04-06 07:52:26