1、PHP 5.二、5.三、5.四、5.五、5.6 版本区分比照和新性能详解
PHP5.2 之前:autoload, PDO 以及 MySQLi, 类型束缚 PHP5.2:JSON 支持 PHP5.3:弃用的性能,匿名函数,新增魔术办法,定名空间,前期动态绑定,Heredoc 以及 Nowdoc, const, 三元运算符,Phar PHP5.4:Short Open Tag, 数组简写方式,Traits, 内置 Web 效劳器,细节修正 PHP5.5:yield, list() 用于 foreach, 细节修正 PHP5.6: 常量加强,可变函数参数,定名空间加强
php5.3
PHP5.3算是一个十分年夜的更新,新增了年夜量新特色,同时也做了一些没有向下兼容的修正:
一、匿名函数
$func=function($arg){ echo $arg; }$func('hello');
二、新增了魔术办法 __invoke(),__callStatic();
跟着匿名函数的退出,PHP 引入了一个新的魔术办法 __invoke(). 该魔术办法会正在将一个工具作为函数挪用时被挪用: class A { public function __invoke($str) { print "A::__invoke(): {$str}"; } } $a = new A; $a("Hello World"); 输入毫无疑难是: A::__invoke(): Hello World __callStatic() 则会正在挪用一个没有存正在的动态办法时被挪用。
三、定名空间
<?php // 定名空间的分隔符是反斜杠,该申明语句必需正在文件第一行。 // 定名空间中能够蕴含恣意代码,但只有 **类, 函数, 常量** 授命名空间影响。 namespace XXOO\Test; // 该类的完好限命名是 \XXOO\Test\A , 此中第一个反斜杠示意全局定名空间。 class A{} // 你还能够正在曾经文件中界说第二个定名空间,接上去的代码将都位于 \Other\Test2 . namespace Other\Test2; // 实例化来自其余定名空间的工具: $a = new \XXOO\Test\A; class B{} // 你还能够用花括号界说第三个定名空间 namespace Other { // 实例化来自子定名空间的工具: $b = new Test2\B; // 导入来自其余定名空间的称号,并重定名, // 留意只能导入类,不克不及用于函数以及常量。 use \XXOO\Test\A as ClassA }
2、php7的新特点
./bin/php -v #查看PHP版本 ./bin/php -m #查看装置的模块
一、变量类型
function test(int $a,string $b,array $c):int{ }
二、谬误异样
try/catch
三、zval应用栈内存
节约了内存调配 php5 zval*val;make_std_zval(val); php7 zval val;
保举教程:PHP7教程
以上就是php版本之间的区分的具体内容,更多请存眷资源魔其它相干文章!
标签: php 区别 版本 php7开发教程 php7开发资料 php7开发自学
版权声明:除非特别标注,否则均为本站原创文章,转载时请以链接形式注明文章出处。
抱歉,评论功能暂时关闭!