PHP5.3新特性小结


Posted in PHP onFebruary 14, 2016

本文总结分析了PHP5.3新特性。分享给大家供大家参考,具体如下:

1、命名空间 解决了类,函数和常量名冲突的问题

2、静态绑定 继承时父类可以直接调用子类重写父类的方法

class A {
  public static function who() {
    echo __CLASS__;
  }
  public static function test() {
    static::who(); // 后期静态绑定从这里开始
  }
}
class B extends A {
  public static function who() {
    echo __CLASS__;
  }
}
B::test();

3、匿名函数,也叫闭包函数(closures),允许 临时创建一个没有指定名称的函数。最经常用作回调函数

//匿名函数做回调函数
uasort($arr ,function($a, $b){
})

闭包函数也可以作为变量的值来使用

$fn = function ($a) {
  echo $a;
};
$fn(1);

PHP会自动把表达式转换成内置类Closure的 对象实例

$fn = function ($a) {
  echo $a;
};
ee($fn);
/**
 * Closure Object
(
  [parameter] => Array
    (
      [$a] => 
    )
)
*/

匿名函数目前是通过Closure类来实现的。目前还不稳定,不适用于正式开发

3、?: 操作符

$a = 0; 
$b = 2;
ee($a ?: $b); # 2 类似js中的 ||

4、新增常量 __DIR_

5、新的垃圾回收机制,解决了循环引用的问题

gc_enable(); // 激活循环引用收集器,默认开启
var_dump(gc_collect_cycles()); // 强制回收已无效的变量
gc_disable(); // 禁用GC

希望本文所述对大家PHP程序设计有所帮助。

PHP 相关文章推荐
php笔记之:初探PHPcms模块开发介绍
Apr 26 PHP
PHP.ini中配置屏蔽错误信息显示和保存错误日志的例子
May 12 PHP
PHP使用GIFEncoder类生成gif动态滚动字幕
Jul 01 PHP
CI框架中cookie的操作方法分析
Dec 12 PHP
php的sso单点登录实现方法
Jan 08 PHP
PHP实现指定字段的多维数组排序函数分享
Mar 09 PHP
PHP中$_SERVER使用说明
Jul 05 PHP
CodeIgniter与PHP5.6的兼容问题
Jul 16 PHP
PHP模板引擎Smarty内建函数详解
Apr 11 PHP
今天你说520了吗?不仅有php表白书还有java表白神器
May 20 PHP
php生成网页桌面快捷方式
May 05 PHP
php设计模式之享元模式分析【星际争霸游戏案例】
Mar 23 PHP
PHP解压tar.gz格式文件的方法
Feb 14 #PHP
最新版本PHP 7 vs HHVM 多角度比较
Feb 14 #PHP
PHP使用socket发送HTTP请求的方法
Feb 14 #PHP
PHP闭包函数详解
Feb 13 #PHP
php设计模式之委托模式
Feb 13 #PHP
PHP常用设计模式之委托设计模式
Feb 13 #PHP
php判断邮箱地址是否存在的方法
Feb 13 #PHP
You might like
php判断字符以及字符串的包含方法属性
2008/08/30 PHP
微盾PHP脚本加密专家php解密算法
2020/09/13 PHP
php 获取全局变量的代码
2011/04/21 PHP
解析使用ThinkPHP应该掌握的调试手段
2013/06/20 PHP
ThinkPHP的I方法使用详解
2014/06/18 PHP
PHP预定义变量9大超全局数组用法详解
2016/04/23 PHP
PHP智能识别收货地址信息实例
2019/01/05 PHP
javascript + jquery实现定时修改文章标题
2014/03/19 Javascript
js 日期比较相关天数代码
2014/04/02 Javascript
给js文件传参数(详解)
2014/07/13 Javascript
初识Node.js
2014/09/03 Javascript
JavaScript操作Cookie方法实例分析
2015/05/27 Javascript
iPhone手机上搭建nodejs服务器步骤方法
2015/07/06 NodeJs
深入浅析javascript立即执行函数
2015/10/23 Javascript
JS实现左右无缝轮播图代码
2016/05/01 Javascript
jquery中live()方法和bind()方法区别分析
2016/06/23 Javascript
nodejs Assert中equal(),strictEqual(),deepEqual(),strictDeepEqual()比较
2017/09/18 NodeJs
vue2.0 兄弟组件(平级)通讯的实现代码
2018/01/15 Javascript
JQuery搜索框自动补全(模糊匹配)功能实现示例
2019/01/08 jQuery
解决vue刷新页面以后丢失store的数据问题
2020/08/11 Javascript
[00:27]DOTA2荣耀之路2:Patience from zhou!
2018/05/24 DOTA
python 图片二值化处理(处理后为纯黑白的图片)
2019/11/01 Python
python实现五子棋游戏(pygame版)
2020/01/19 Python
Python基于read(size)方法读取超大文件
2020/03/12 Python
Python中猜拳游戏与猜筛子游戏的实现方法
2020/09/04 Python
python 如何将office文件转换为PDF
2020/09/22 Python
Python实现迪杰斯特拉算法并生成最短路径的示例代码
2020/12/01 Python
阿玛瑞酒店中文官方网站:Amari.com
2018/02/13 全球购物
Harrods美国:英国最大的百货公司
2018/11/04 全球购物
奖学金自我鉴定范文
2013/10/03 职场文书
企业消防安全制度
2014/02/02 职场文书
网吧最新创业计划书范文
2014/03/27 职场文书
2015年度班主任自我评价
2015/03/11 职场文书
党务工作者主要事迹材料
2015/11/03 职场文书
Python 语言实现六大查找算法
2021/06/30 Python
JavaScript选择器函数querySelector和querySelectorAll
2021/11/27 Javascript