鍍金池/ 教程/ PHP/ PHP變量在內核中的實現
ext_skel生成器
構建并編譯一個宿主應用
總結
小結
小結
小結
編譯前的準備
變量的存儲方式
強制模塊依賴
編譯我們的擴展
庫的查找
讓我們從SAPI開始
Unix/Linux平臺下的編譯
小結
函數的參數
zendparseparameters
PHP語言中的超級全局變量(Superglobals)
同時擴展和嵌入
線程安全
變量的值
啟動與終止的那點事
一個擴展的基本結構
資源自有的引用計數
小結
創(chuàng)建PHP變量
有趣的流
一個特殊的參數:return_value
設置宿主環(huán)境
小結
關于生命周期
變量的檢索
內存管理
狀態(tài)與屬性讀取
Persistent Resources
Autoconf
小結
PHP編譯前的config配置
函數返回值
PHP中的面向對象(一)
PHP擴展中的全局變量
嵌入式SAPI
通過嵌入包裝重新創(chuàng)建cli
小結
在Win32平臺上編譯PHP
小結
老技術新用
過濾器
MINFO與phpinfo
zendclassentry
編寫函數
PHP中的資源類型
實現wrapper
引用計數
小結
變量的類型
流的概覽
PHP中的面向對象(二)
擴展生成器
覆寫INI_SYSTEM和INI_PERDIR選項
捕獲輸出
小結
回調到php中
PHP的啟動與終止
定義一個接口
初始化php
配置編譯環(huán)境
PHP Streams的本質
小結
類的繼承與接口的實現
讀寫ini配置
定義一個類
小結
PHP的生命周期
流的上下文
引用與函數的執(zhí)行結果
類型轉換
小結
Array與HashTable
PECL_Gen
復合類型的數據——資源
小結
小結
數組(C中的)與鏈表
PHP的生命周期
讀寫對象的屬性
PHP變量在內核中的實現
Manipulation
高級嵌入式
操作HashTable的API
流式訪問
Arg Info 與類型綁定
小結
在內核中操作PHP語言中數組
第一個擴展
流的封裝——wrapper
配置和鏈接
流的實現
PHP的生命周期
生成對象的實例與調用方法
錯誤處理
INI設置
靜態(tài)編譯
小結
內存管理
Static Stream Operations
常量

PHP變量在內核中的實現

所有的編程語言都要提供一種數據的存儲與檢索機制,PHP也不例外。其它語言大都需要在使用變量之前先定義,并且它的類型也是無法再次改變的,而PHP卻允許程序猿自由的使用變量而無須提前定義,甚至可以隨時隨意的對已存在的變量轉換成其它任何PHP支持的數據類型。在程序在運行的時候,PHP還會自動的根據需求轉換變量的類型。

我認為閱讀本書的人都已經是標準的PHP程序猿了,所以你們也肯定體驗過PHP的弱類型的變量體系。眾所周知,PHP引擎是用C寫的,而C確實一種強類型的編程語言,PHP內核中是如何用C來實現自己的這種弱類型特性的,你將在本章中找到答案!