国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > PHP > 正文

php7中新特性的總結

2020-03-22 18:45:07
字體:
來源:轉載
供稿:網友
本篇文章給大家帶來的內容是關于php7中新特性的總結,有一定的參考價值,有需要的朋友可以參考一下,希望對你有所幫助。

PHP7 從發布到現在已經有快三年的時間了,現在已經發展到 PHP7.2.9 版本了。它的發布給 PHP 帶來了很大的性能提升,這主要是得益于 PHP 對 Zend 引擎的深度優化,同時還降低了 PHP 對系統的資源占用。

主要的變化有以下幾點:

  • 抽象語法樹

在PHP之前的版本中,PHP代碼在語法解析階段直接生成了 ZendVM 指令,也就是在 zend_language_parser.y 中直接生成 opline 指令,這使得編譯器與執行器耦合在一起。

PHP7 中增加了抽象語法樹,首先是將PHP代碼解析生成抽象語法樹,然后將抽象語法樹編譯為 ZendVM 指令。抽象語法樹的加入使得 PHP 的編譯器與執行器很好地隔離開,編譯器不需要關心指令的生成規則,然后執行器根據自己的規則將抽象語法樹編譯為對應的指令,執行器同樣不需要關心該指令的語法規則是什么樣子的。

  • Native TLS

PHP7 中使用 Native TLS(線程局部存儲)來保存線程的資源池,簡單地講就是通過 __thread 標識一個html' target='_blank'>全局變量,這樣這個全局變量就是線程獨享的了,不同線程的修改不會相互影響。

  • 指定函數參數、返回值類型

PHP7中可以指定函數參數及返回值的類型。

  • zval 結構的變化

PHP7 將引用計數轉移到了具體的 value 中,這樣更合理。除此之外,zval 結構的大小也從 24byte 少到了 16byte,這是 PHP7 能夠降低系統資源占用的一個優化點所在。

  • 異常處理

PHP5.x 中很多操作會直接拋出 error 錯誤,PHP7 中將多數錯誤改為了異常拋出,這樣一來就可以通過 try catch 捕捉到。

  • HashTable 的變化

PHP7 中 HashTable 有非常大的變化,HashTable 結構的大小從 72byte 減小到了 56byte,同時,數組元素 Bucket 結構也從 72byte 減小到了 32byte。

  • 執行器

在 PHP7 中不再采用傳參的方式,而是將 execute_dataopline 通過寄存器來進行存儲,避免了傳參導致的頻繁出入棧操作,同時,寄存器相比內存的訪問速度更快。

  • 新的參數解析方式

PHP5.x 通過 zend_parse_parameters() 解析函數的參數,PHP7 提供了另外一種方式,同時保留了原來的方式,但是新的解析方式速度更快。

相關推薦:

PHP7 新特性 簡介

PHP7新特性介紹

以上就是php7中新特性的總結的詳細內容,更多請關注 其它相關文章!

鄭重聲明:本文版權歸原作者所有,轉載文章僅為傳播更多信息之目的,如作者信息標記有誤,請第一時間聯系我們修改或刪除,多謝。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 拜城县| 宜兴市| 屏南县| 衡水市| 勐海县| 梁平县| 大同市| 兴安盟| 合水县| 桐梓县| 临汾市| 延庆县| 兰溪市| 洪湖市| 马山县| 乐山市| 大余县| 高密市| 乐清市| 盐池县| 梧州市| 白城市| 永安市| 建宁县| 辰溪县| 德阳市| 高安市| 德格县| 滁州市| 营口市| 武城县| 德保县| 平泉县| 巴马| 高雄市| 邢台县| 灵丘县| 南岸区| 阿巴嘎旗| 内江市| 佛教|