>백엔드 개발 >PHP 튜토리얼 >辛星浅析php变量中的优先级问题

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

WBOY
WBOY원래의
2016-06-23 13:27:40898검색

      因为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


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

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.