为了账号安全,请及时绑定邮箱和手机立即绑定

在smarty中使用print_r函数 打印异常

实际上在smarty中不需要使用print_r函数,但smarty中支持php的内置函数   按理说也是可以正常使用的,于是...测试了下

<?php
	require './libs/Smarty.class.php';
	$smarty = new Smarty();
	$smarty->setTemplateDir('tpl');
	$smarty->setCompileDir('template_c');
	$smarty->setCacheDir('cache');
	$smarty->caching = false;
	$smarty->cache_lifetime = 120;
	$smarty->display('test.tpl');
?>
test.tpl中的代码:
{"a"|print_r}

打印结果是 a1

为何?不应该是a吗?

正在回答

1 回答

纳闷之余,去翻看了一下smarty编译后的php程序发现了如下代码:

function content_58626d30228a24_11924857 (Smarty_Internal_Template $_smarty_tpl) {
    echo print_r("a");
}

原来是prinr_r打印后返回了一个true,后面的echo又跟上来打印true,php自动将true转变成了1给打印了。。

...

解决了

1 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消

在smarty中使用print_r函数 打印异常

我要回答 关注问题
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号