首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >通过include语句将变量设置为html标记

通过include语句将变量设置为html标记
EN

Stack Overflow用户
提问于 2013-11-21 18:24:41
回答 4查看 307关注 0票数 0

使用phpmailer函数,必须用双引号格式化变量内的电子邮件正成为一场噩梦。

代码语言:javascript
复制
$body = "<div><h1>Hello, ".$foo."!</h1></div>";

整个电子邮件都是这样的,因为我的编辑器(KomodoEdit)不识别语法错误,而且标记是在字符串中定义的,因此很难排除故障。

我一直在研究其他方法来实现这一点,比如特雷多方法,但是这看起来更干净,但它仍然不允许我使用编辑软件的语法检查和标签折叠。

我的下一步是尝试这样的方法:

body.php

代码语言:javascript
复制
<div><h1>Hello, $foo !</h1></div>

index.php

代码语言:javascript
复制
error_reporting(E_ALL);
$foo = 'Frank';

$page = include('body.php');

$body = <<<EOD
        $page
        EOD;

但这没有张贴任何东西,我甚至没有收到任何错误的报告。我已经通过了手册,但不是在语法上遗漏了什么东西,就是在使用<<<EOD时出现了逻辑错误。

EN

回答 4

Stack Overflow用户

回答已采纳

发布于 2013-11-21 18:26:41

以前不能有空格。往左移。不过,那还是做不到你想做的。

代码语言:javascript
复制
ob_start();
include('body.php');
$page = ob_get_clean();

我永远不会调整我的应用程序以满足语法高亮显示或编辑器的任何其他功能!

票数 2
EN

Stack Overflow用户

发布于 2013-11-21 18:50:51

更新您的代码

index.php

代码语言:javascript
复制
error_reporting(E_ALL);
$_REQUEST['foo'] = 'Frank';

ob_start();
include('body.php');
$page = ob_get_clean();

body.php

代码语言:javascript
复制
"<div><h1>Hello, ".$_REQUEST['foo']." !</h1></div>"

我们只能访问包含的文件中的公共变量(请求等)。

票数 0
EN

Stack Overflow用户

发布于 2013-11-21 19:18:03

试试这个:

1) index.php

代码语言:javascript
复制
<?php
error_reporting(E_ALL);
$foo = 'Frank';

$page = include('body.php');

echo <<<EOD
    $page
EOD;
?>

2) body.php

代码语言:javascript
复制
<?php
return <<<RESULT
    <div><h1>Hello, $foo !</h1></div>
RESULT;
?>
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/20128993

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档