注冊 | 登錄讀書好,好讀書,讀好書!
讀書網-DuShu.com
當前位置: 首頁出版圖書科學技術工業(yè)技術建筑科學建筑設計PHP7內核剖析

PHP7內核剖析

PHP7內核剖析

定 價:¥89.00

作 者: 秦朋 著
出版社: 電子工業(yè)出版社
叢編項:
標 簽: 編程語言與程序設計 計算機?網絡

購買這本書可以去


ISBN: 9787121328107 出版時間: 2017-10-01 包裝:
開本: 頁數: 字數:  

內容簡介

  PHP作為流行的語言之一,自**個版本發(fā)布至今的二十幾年里經歷了多次重大改進,PHP7版本*大的特色在于其性能上的突破,比PHP5快了一倍。目前PHP7已經得到了廣泛應用,越來越多的項目從PHP5遷移到了PHP7。目前,關于PHP內核的資料非常有限,本書以當前流行的PHP7版本為基礎,系統(tǒng)性地、盡可能詳細地介紹PHP語言底層的實現,旨在幫助更多的開發(fā)者進一步理解PHP,參與到PHP的實現中,為未來PHP的發(fā)展貢獻一份力量!全書內容主要包括PHP數據類型的實現、PHP的編譯及執(zhí)行、PHP內存的管理、函數及面向對象的實現、PHP基礎語法的實現,以及PHP擴展的開發(fā)。

作者簡介

  目前就職于滴滴引擎技術部,負責專快車分單架構相關的工作,曾作為核心成員參與了滴滴小巴業(yè)務線的成立,曾先后就職于360、搜狗,有4年多的PHP、C、Golang開發(fā)經驗,熟悉PHP擴展的實現,對PHP內核有深入的理解。

圖書目錄

第1章 PHP基礎架構

1.1 簡介

1.2 安裝及調試

1.3 PHP7的變化

1.4 PHP的構成

1.5 生命周期

1.6 小結

第2章 SAPI

2.1 Cli

2.1.1 執(zhí)行流程

2.1.2 內置Web服務器

2.2 Fpm

2.2.1 基本實現

2.2.2 Fpm的初始化

2.2.3 worker――請求處理

2.2.4 master――進程管理

2.3 Embed

2.3.1 實現

2.3.2 使用

2.4 小結

第3章 數據類型

3.1 變量

3.1.1 變量類型

3.1.2 內部實現

3.2 字符串

3.3 數組

3.3.1 基本實現

3.3.2 散列函數

3.3.3 數組的初始化

3.3.4 插入

3.3.5 哈希沖突

3.3.6 查找

3.3.7 擴容

3.4 引用

3.5 類型轉換

3.5.1 轉換為NULL

3.5.2 轉換為布爾型

3.5.3 轉換為整型

3.5.4 轉換為浮點型

3.5.5 轉換為字符串

3.5.6 轉換為數組

3.5.7 轉換為對象

3.6 小結

第4章 內存管理

4.1 變量的自動GC機制

4.1.1 引用計數

4.1.2 寫時復制

4.1.3 回收時機

4.2 垃圾回收

4.2.1 回收算法

4.2.2 具體實現

4.3 內存池

4.3.1 內存池的初始化

4.3.2 內存分配

4.3.3 系統(tǒng)內存分配

4.3.4 內存釋放

4.4 線程安全

4.4.1 TSRM的基本實現

4.4.2 線程私有數據

4.4.3 線程局部存儲

4.5 小結

第5章 PHP的編譯與執(zhí)行

5.1 語言的編譯與執(zhí)行

5.1.1 編譯型語言

5.1.2 解釋型語言

5.2 Zend虛擬機

5.2.1 opline指令

5.2.2 zend_op_array

5.2.3 zend_execute_data

5.2.4 zend_executor_globals

5.3 PHP的編譯

5.3.1 詞法、語法解析

5.3.2 抽象語法樹編譯

5.3.3 pass_two()

5.4 PHP的執(zhí)行

5.4.1 handler的定義

5.4.2 調度方式

5.4.3 執(zhí)行流程

5.4.4 全局execute_data和

opline

5.5 運行時緩存

5.6 Opcache

5.6.1 opcode優(yōu)化

5.6.2 JIT

5.7 小結

第6章 函數

6.1 用戶自定義函數

6.1.1 語法解析

6.1.2 抽象語法樹的編譯

6.2 內部函數

6.3 函數的調用

6.4 函數的執(zhí)行

6.5 小結

第7章 面向對象

7.1 類

7.1.1 常量

7.1.2 成員屬性

7.1.3 成員方法

7.1.4 類的編譯

7.1.5 內部類

7.1.6 類的自動加載

7.2 對象

7.2.1 對象的創(chuàng)建

7.2.2 非靜態(tài)成員屬性的讀寫

7.2.3 對象的復制

7.2.4 對象的比較

7.2.5 對象的銷毀

7.3 繼承

7.3.1 常量的繼承

7.3.2 成員屬性的繼承

7.3.3 成員方法的繼承

7.4 動態(tài)屬性

7.5 魔術方法

7.6 小結

第8章 命名空間

8.1 概述

8.2 命名空間的定義

8.3 命名空間的使用

8.3.1 use導入

8.3.2 動態(tài)用法

8.4 小結

第9章 PHP基礎語法的實現

9.1 靜態(tài)變量

9.2 常量

9.2.1 const

9.2.2 define()

9.3 全局變量

9.3.1 全局變量符號表

9.3.2 全局變量的訪問

9.3.3 全局變量的銷毀

9.3.4 超全局變量

9.4 分支結構

9.4.1 if

9.4.2 switch

9.5 循環(huán)結構

9.5.1 while

9.5.2 do while

9.5.3 for

9.5.4 foreach

9.6 中斷及跳轉

9.6.1 break/continue

9.6.2 goto

9.7 include/require

9.8 異常處理

9.8.1 PHP中的try catch

9.8.2 內核中的異常處理

9.9 break/continue LABEL語法的

實現

9.10 小結

第10章 擴展開發(fā)

10.1 擴展的內部實現

10.2 擴展的構成及編譯

10.2.1 腳本工具

10.2.2 擴展的編寫步驟

10.2.3 config.m4

10.3 鉤子函數

10.3.1 模塊初始化階段

10.3.2 請求初始化階段

10.3.3 請求結束階段

10.3.4 post deactivate階段

10.3.5 模塊關閉階段

10.4 全局資源

10.5 ini配置

10.6 函數

10.6.1 內部函數注冊

10.6.2 函數參數解析

10.6.3 引用傳參

10.6.4 函數返回值

10.6.5 函數調用

10.7 Zval的操作

10.7.1 zval的創(chuàng)建及獲取

10.7.2 變量復制

10.7.3 引用計數

10.7.4 字符串操作

10.7.5 數組操作

10.8 常量

10.9 面向對象

10.9.1 內部類注冊

10.9.2 成員屬性

10.9.3 成員方法

10.9.4 常量

10.9.5 類的實例化

10.10 資源

10.11 小結


本目錄推薦

掃描二維碼
Copyright ? 讀書網 www.dappsexplained.com 2005-2020, All Rights Reserved.
鄂ICP備15019699號 鄂公網安備 42010302001612號