php用哪个版本
内容导读
收集整理的这篇技术教程文章主要介绍了php用哪个版本,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含2310字,纯文字阅读大概需要4分钟。
内容图文
PHP各个版本之间的区别
一、PHP 5.2、5.3、5.4、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: 常量增强,可变函数参数,命名空间增强
1.php5.2以前
1.1 autoload的使用
当在代码中使用一个未定义的类的时候,该函数就会被调用,现在已经不再使用了,因为一个项目中只能有一个__autoload();现在使用spl_autoload_register();
1.2 PDO和MiSQLi的使用
1.3 类型约束。
通过类型约束可以限制参数的类型,不过这个机制不完善。
2. php5.2
2.1 JSON的支持
增加了json_encode(),json_decode()等函数
3.php5.3
PHP5.3 算是一个非常大的更新,新增了大量新特征,同时也做了一些不向下兼容的修改
3.1 弃用的功能
3.2 匿名函数
$func=function($arg){ echo $arg;}$func('hello');
3.2 新增了魔术方法 __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() 则会在调用一个不存在的静态方法时被调用。
3.3命名空间
<?php// 命名空间的分隔符是反斜杠,该声明语句必须在文件第一行。// 命名空间中可以包含任意代码,但只有 **类, 函数, 常量** 受命名空间影响。namespace XXOOTest;// 该类的完整限定名是 XXOOTestA , 其中第一个反斜杠表示全局命名空间。class A{}// 你还可以在已经文件中定义第二个命名空间,接下来的代码将都位于 OtherTest2 .namespace OtherTest2;// 实例化来自其他命名空间的对象:$a = new XXOOTestA;class B{}// 你还可以用花括号定义第三个命名空间namespace Other { // 实例化来自子命名空间的对象: $b = new Test2B; // 导入来自其他命名空间的名称,并重命名, // 注意只能导入类,不能用于函数和常量。 use XXOOTestA as ClassA}
3.4后期静态绑定
#self 的语义本来就是“当前类”class A{ static public function callFuncXXOO() { print static::funcXXOO(); } // ...}
二、PHP7新特性
./bin/php -v #查看PHP版本./bin/php -m #查看安装的模块
1、变量类型
function test(int $a,string $b,array $c):int{}
2、错误异常
try/catch
3、zval使用栈内存
节约了内存分配php5zval*val;make_std_zval(val);php7 zval val;
推荐教程:PHP视频教程
以上就是php用哪个版本的详细内容,更多请关注Gxl网其它相关文章!
内容总结
以上是为您收集整理的php用哪个版本全部内容,希望文章能够帮你解决php用哪个版本所遇到的程序开发问题。 如果觉得技术教程内容还不错,欢迎将网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。