php5.2和5.3有什么区别
时间:2021-10-18
来源:互联网
今天PHP爱好者为您带来php5.2和5.3的区别有:1、php5.3弃用了Register Globals、Magic Quotes等功能;2、新增了魔术方法__invoke()、__callStatic();3、支持用const定义常量。希望对大家有所帮助。
本文操作环境:windows10系统、php 5.2&&php 5.3、thinkpad t480电脑。
很多小伙伴可能不太了解php 5.2和php 5.3之间有什么区别。下面我们就来具体介绍下这两个版本之间有什么区别,具体的区别在哪里,一起来看下吧。
我们先来看下php 5.2这个版本。
php5.2(2006-2011)
JSON的支持
增加了json_encode(),json_decode()等函数
接着我们来看下php 5.3这个版本。
php5.3(2009-2012)
PHP5.3 算是一个非常大的更新,新增了大量新特征,同时也做了一些不向下兼容的修改,一起来看下。
1.弃用的功能
以下几个功能被弃用,若在配置文件中启用,则 PHP 会在运行时发出警告。
Register Globals
Magic Quotes
Safe Mode
2.匿名函数
f u n c = f u n c t i o n ( func=function(func=function(arg){
echo $arg;
}
$func(‘hello’);
3.新增了魔术方法 __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() 则会在调用一个不存在的静态方法时被调用。
4.命名空间,但不完善,只支持类
5.后期静态绑定
6.Heredoc 和 Nowdoc
对 Heredoc 以及 Nowdoc 进行了一些改进,它们都用于在 PHP 代码中嵌入大段字符串。
7.用 const 定义常量
PHP5.3 起同时支持在全局命名空间和类中使用 const 定义常量。
旧式风格:
define("XOOO", "Value");
新式风格:
const XXOO = "Value";
const 形式仅适用于常量,不适用于运行时才能求值的表达式:
// 正确
const XXOO = 1234;
// 错误
const XXOO = 2 * 617;
(在5.6版后可以了)
8.三元运算符简写形式
旧式风格:
echo $a ? $a : “No Value”;
可简写成:
echo $a ?: “No Value”;
即如果省略三元运算符的第二个部分,会默认用第一个部分代替。
9.Phar
Phar即PHP Archive, 起初只是Pear中的一个库而已,后来在PHP5.3被重新编写成C扩展并内置到 PHP 中。
Phar用来将多个 .php 脚本打包(也可以打包其他文件)成一个 .phar 的压缩文件(通常是ZIP格式)。
目的在于模仿 Java 的 .jar, 不对,目的是为了让发布PHP应用程序更加方便。同时还提供了数字签名验证等功能。
.phar 文件可以像 .php 文件一样,被PHP引擎解释执行,同时你还可以写出这样的代码来包含(require) .phar 中的代码:
require(“xxoo.phar”);
require(“phar://xxoo.phar/xo/ox.php”);
以上就是php5.2和5.3有什么区别的详细内容,更多请关注php爱好者其它相关文章!
-
无限暖暖泡泡飘游时全-泡泡飘游时怎么玩 时间:2025-05-10
-
桃源记2容易忽略的资源-新手必看获取小细节 时间:2025-05-10
-
购买加密货币的APP究竟有哪些?十大加密货币交易APP排名榜单 时间:2025-05-10
-
桃源记2容易忽略的资源-新手必看获取小细节 时间:2025-05-10
-
鸣潮守岸人突破材料需要哪些 鸣潮守岸人突破材料盘点及获取方法 时间:2025-05-10
-
桃源记2如何提高村民寿命-村民寿命怎么增加 时间:2025-05-10
今日更新
-
什么是数据库系统
阅读:18
-
写vuejs用什么ide工具
阅读:18
-
vuejs如何自定义属性
阅读:18
-
vuejs脚手架是干嘛用的
阅读:18
-
php中echo和return的区别是什么
阅读:18
-
php中system()不返回输出怎么办
阅读:18
-
LOLS11全球总决赛抽签结果出炉 DK大战FPX
阅读:18
-
php zend安装配置的方法
阅读:18
-
php怎么设置页面不能后退
阅读:18
-
suse如何详细安装php
阅读:18