这篇文章主要为大家展示了“thinkphp不解析u的解决方法”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“thinkphp不解析u的解决方法”这篇文章吧。
thinkphp不解析u是因为模板引擎只会解析一次,并且不在模版文件中的标签用法是不会解析的,其解决办法就是在放数据库中之前生成一次,然后存入即可。
本文操作环境:Windows7系统、thinkphp v5.1版、Dell G3电脑。
Thinkphp的U方法不能正确解析问题
我在使用ThinkPHP的U方法的时候,例如:把模板中的{:U(GROUP_NAME . '/Clear/clearCache')},以字符串的形式存到数据库中,然后再后台我把它从数据库读出来分配到前台→ <a href='$v.url'>清理缓存</a>,结果前台显示的是<a href='{:U(GROUP_NAME . '/Clear/clearCache')}'>清理缓存</a>,并没有把U方法生成的URL解析出来,请问这是什么原因呢?
问题分析:
模板引擎只会解析一次,你用的变量,则只将变量用值来替换,而不会替换完了,再去值里看看有没有要解析的标签。所以,你存数据库的就应该是不含TP标签的数据。
不要把这个语句放到数据库中
解决方法:1.在放在数据库中之前生成一次,然后存入,2.用的时候生成,推荐第1种。
以上是“thinkphp不解析u的解决方法”这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注编程网行业资讯频道!