Home >Backend Development >PHP Tutorial >辛星浅析php变量中的优先级问题

辛星浅析php变量中的优先级问题

WBOY
WBOYOriginal
2016-06-23 13:27:40890browse

      因为php是一个脚本语言,因此它的过度的灵活性,会导致它在解析的时候会产生歧义,一般来说我们是要避免这些歧义的,这里来小小的举一个例子吧,朋友们不妨看看下面的代码会输出什么:

        

<?php $var = 'hello';$var_ = 'world';echo "$var_$var_";echo "<br />";echo "{$var}_$var_";


        对于上面的代码,第一个echo永远会输出"worldworld",因为它在解析的时候不会单独的解析$var,而是解析成为$var_,而后面的则会解析成为hello_world,也就是说我们用花括号强制改变了它的优先级。


       其实还有一个很经典的例子,就是在数组上,直接贴代码:

// DaiJie 的代码中有一种以上的解释,php解释器不知道什么是对的。$c = array('d'=>'e');echo "{$c}['d']"; // Array['d']$c = array('d'=>'e');echo "${c['d']}"; // e

     上面我们使用大括号来强制性的改变它的优先级,对于具体例子就不多解释了。顺便说一下,本文主要参考sf,贴一下传送门:http://segmentfault.com/q/1010000000120010


版权声明:本文为博主原创文章,未经博主允许不得转载。

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn