Smarty带来的神秘的数字1

Posted zgll

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Smarty带来的神秘的数字1相关的知识,希望对你有一定的参考价值。

 

问题的引发:在htmly页面通过smarty模板引擎开启session_start()后,突发发现页面无故多了一个  神秘的数字 1

问题界面:

技术图片

代码:

技术图片

测试:在session_start()行末加2,出现的是12,在行首加2,出现的是21.

猜想:session_start()本身就是这个神秘的“1”?于是我将代码

改成技术图片,1消失了(这里我的本意是想让这个值变为空)

 

改成技术图片。又变回了1

改成技术图片,还是1

于是我恍然大悟,session_start()的返回值是1吧!但为什么1==2的结果还是1,不应该是false,然后1照样消失吗?

php官网查阅:成功开始会话返回 TRUE ,反之返回 FALSE

技术图片

所以在==2时,会先将2转换为TRUE,同时1也装换为TRUE,得到TRUE‘再装换为1.

因此如果是这样改技术图片,1同样也会正确消失。

 

TIP:smarty解析{session_start() }的结果:

<?php echo session_start();?>
这里我没注意echo了,所以导致我一直在没方向地猜测!

总结:仔细观察,不要急功近利,思考着去探索远比盲打莽撞有价值,过程比结果更重要。

以上是关于Smarty带来的神秘的数字1的主要内容,如果未能解决你的问题,请参考以下文章

Smarty 上的价格数字格式

ViewPager 片段之间的神秘分隔线?

PHP - Smarty 模板 - 如何创建与上下文无关的模板

神经网络:神秘的ReLu

smarty中的数字格式

48个值得掌握的JavaScript代码片段(上)