作為世界上最好的語言,php有著非常靈活的語法,它的靈活甚至有時候讓你摸不到頭腦,函數的命名不規範遭到了很多人的批評,然而這些並不能阻止它的發展。
沒有一種語言從設計之初就可以做所有事情,因此我們需要不斷去發展它,擴展它,而php的擴展就是它這些年不斷前行的動力,yar,swoole的出現,讓php又煥發出青春活力。
php的擴展開發主要有三種方式。
php-cpp是一套c++類庫,方便我們用來開發php的擴展程序。它具有速度極快的特點。不需要知道zendengine的知識就可以開發擴展,並且可以訪問php中的各種語法結構和變量。
因為php的很多函數都是來自於c語言命名,因此當你使用c++開發php的擴展的時候,你會感到很親切,感到很熟悉,感到上手很容易。
它提供了類型系統,以友好的語言將靜態和動態類型結合在了一起,並使用行業標準的編譯器將其編譯為機器代碼,具有高可維護的特點。
zephir是安全的,它禁止我們使用指針訪問內存,並提供了垃圾回收器,進行垃圾回收,避免了內存洩漏。
它是跨平臺的,可以支持多個系統平臺。
這是php源碼自帶的擴展生成工具,使用它,可以快速搭建一個擴展框架。
使用此方法需要你有c語言的基本知識,會編譯c代碼。
使用phpize生成configure文件,進行編譯安裝。
隨著FFI的出現,php可以更加優雅的使用嵌套其它語言,也許以後,將會出現更多使用php原生語言開發出來的擴展。