上篇文章给大家介绍了《继续学习——ajax php(附源码)》,本文继续给大家介绍新的内容——php7,相信大家已经对php7有过一点点的了解,并且产生了浓厚的兴趣,现在就让我们出发去看看吧!!!
php7版本对变量解析机制做了调整,调整如下:
一、间接变量、属性和方法引用都按照从左到右的顺序进行解释:
$$foo['bar']['baz'] // interpreted as ($$foo)['bar']['baz'] $foo->$bar['baz'] // interpreted as ($foo->$bar)['baz'] $foo->$bar['baz']() // interpreted as ($foo->$bar)['baz']() foo::$bar['baz']() // interpreted as (foo::$bar)['baz']()
如果想改变解释的顺序,可以使用大括号:
${$foo['bar']['baz']}$foo->{$bar['baz']}$foo->{$bar['baz']}()foo::{$bar['baz']}()
二、global关键字现在只能引用简单变量
global $$foo->bar; // 这种写法不支持。global ${$foo->bar}; // 需用大括号来达到效果。
三、用括号把变量或者函数括起来没有用了
function getarray() { return [1, 2, 3]; }$last = array_pop(getarray());// strict standards: only variables should be passed by reference$last = array_pop((getarray()));// strict standards: only variables should be passed by reference
注意第二句的调用,是用圆括号包了起来,但还是报这个严格错误。之前版本的php是不会报这个错误的。
四、引用赋值时自动创建的数组元素或者对象属性顺序和以前不同了。
$array = [];$array["a"] =& $array["b"];$array["b"] = 1;var_dump($array);php7产生的数组:["a" => 1, "b" => 1]php5产生的数组:["b" => 1, "a" => 1]
推荐学习:《php视频教程》
以上就是对php7的了解(附详细教程)的详细内容。