PHP5.6與PHP7之間的區別

一、倆者的區別
1.PHP7.0比PHP5.6性能提升了倆倍。
2.PHP7.0全面一致支持64位。
3.PHP7.0之前出現的致命錯誤,都改成了拋出議程。
4.增加了空結合操作符(??),相當於三元運算符。
5.PHP7.0新增了函數的返回類型聲明。
6.PHP7.0新增了標量類型聲明。
7.PHP7中的函數的形參類型聲明可以是標量。在PHP5中只可以是類名、接口、數組或者callable(PHP5.4,即可以是函數,包括匿名函數),現在也可以使用string、int、float和bool了。
8.PHP7.0中新增加了匿名類。
9.PHP7.0之後移除了一些老的不再支持的SAPI(服務器端應用編程端口)和擴展。
10.define可以定義常量數組。
二、PHP7.0新特性
1.類型的聲明
可以使用字符串(string), 整數 (int), 浮點數 (float), 以及布爾值 (bool),來聲明函數的參數類型與函數返回值。
標量聲明類型模式:強制模式(默認模式)和嚴格模式
declare(strict_types=1),必須放在最上面,確保文件執行有效。
2.異常處理
PHP7.0中避免了之前的致命錯誤,而是通過繼承Error類,將錯誤拋出,讓開發者對程序的掌控能力更強。
3.新增操作符"<=>"
語法:$x = $y <=> $z

如果$y> $z, $x 的值爲1

如果$y == $z, $x 的值爲0

如果$y < $z, $x 的值爲-1
4.新增操作費“??”
如果變量存在且值不爲NULL,則返回自身的值,否則返回第二個操作數。
5.define()定義常量數組
6.匿名函數
7.Unicode字符格式支持(echo"/u{1234}")
8.Unserialize 提供過濾特性
防止非法數據進行代碼注入,提供了更安全的反序列化數據。
9.命名空間引用優化
在同一文件夾中的文件支持數組形式引入
三、如何充分發揮PHP7性能
1.開啓Opcache

zend_extension=opcache.so 
opcache.enable=1 
opcache.enable_cli=1

2.使用GCC 4.8以上進行編譯
3.開啓HugePage
4.PGO (Profile Guided Optimization)

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章