thinkphp把HTML+PHP写的一个页面代码存入数据库以后 读取出来的效果HTML代码解析了PHP代码被直接输出

这个是要写入数据库的代码 里面的PHP变量是控制器赋值过来的 读取出来后PHP代码不被解析 各位TP高手给点意见 怎么才可以实现读取出来后就像直接写了 个这样的HTML模版文件一样的效果. 或者要怎么实现模版的二次解析 附上代码 万分感谢

你将是变量的值存放到数据库,取出来的时候系统是无法识别的。你只能存放没有动态数据的代码到数据库。至于这个解决的办法:要么你不要把代码存放到数据库,如果一定要存放到数据库,反正动态数据的代码存放进去是无法识别出来的,你可以将代码分成几个部分存进去,读取出来,然后动态数据的代码再单独写,不过会比较麻烦。
这个不仅仅是thinkphp,任何一个框架,你存放动态的数据进去,都是无法识别的
温馨提示:答案为网友推荐,仅供参考
第1个回答  推荐于2018-05-11
用Widget,渲染输出是可以做到的.
在Lib/Widget/下新建一个文件命名为TestWidget.class.php文件:
代码
<?php
class TestWidget extends Widget{

public function render($data) {
return $this->renderFile("test_page",$data);
}
}
在Lib/Widget/Test/下新建一个文件test_page.html把你上面从数据库中读的代码放入test_page.html中。
然后在其它模板中这样调用{:W('Test',array())}
这只是一个基本例子。具体项目中你可以把你从数据库读出的代码动态保存入Lib/Widget/Test/test_page.html中。在调用 return $this->renderFile("test_page",$data);本回答被提问者和网友采纳
第2个回答  2013-04-17

thinkphp里面有不解析的代码

可以使用 literal 标签来防止模板标签被览枂,例如:
<literal>
<if condition="$name eq 1 "> value1
<elseif condition="$name eq 2"/>value2
<else /> value3
</if>
</literal>
上面癿 if 标签被 literal 标签包含,因此 if 标签里面癿内容开丌会被模板引擎览枂,而是保持原样输
出。
如果佝癿 php 标签中需要输出类似{$user} 戒者 XML 标签<volist></volist>癿情冴,可以通过添
加 literal 标签览决混淆问题,例如:
<php>echo '{$Think.config.CUSTOM.'.$key.'}';</php>
返个 php 标签中癿{$Think 可能会被模板引擎诣当做标签览枂,览决癿办法就是加上 literal,例如:
<php><literal>echo '{$Think.config.CUSTOM.'.$key.'}';</literal></php>
Literal 标签迓可以用亍页面癿 JS 代码外层,确保 JS 代码中癿某些用法和模板引擎丌产生混淆。
总乀,所有可能和内置模板引擎癿览枂觃则冲突癿地方都可以使用 literal 标签处理。

相关了解……

你可能感兴趣的内容

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 非常风气网