寫在最前面
隨著網路快速發展,lamp架構的流行,php支援的擴展也越來越多,這直接促進了php的發展。
但是php也有腳本語言不可避免的問題,效能比例如C等編譯型語言相差甚多,所以在考慮效能問題的時候最好還是透過php擴展來解決。 (推薦學習:PHP影片教學)
那麼,怎麼做一個php擴充呢。下面從一個例子開始(需要C基礎)。
解決一個問題
在一個系統中,如果經常要求一個陣列的平方和,我們可以這麼寫。
<?php function array_square_sum($data){ $sum = 0; foreach($data as $value){ $sum += $value * $value; } return $sum; }
實際執行的時候,php zend引擎會把這段話翻譯成C語言,每次都需要進行記憶體分配。 所以效能比較差。進而,基於效能上的考慮,我們可以寫一個擴充來做這個事情。
寫擴展
建立一個擴展,至少需要2個檔案。一個是Configulator文件,它會告訴編譯器編譯這個擴充至少需要哪些依賴函式庫;第二個是實際執行的文件。
產生框架
聽起來很複雜,其實有一個工具可以幫我們搞定一個擴充的框架。在php原始碼裡面有個工具ext_skel,他可以幫我們產生擴充框架。
liujun@ubuntu:~/test/php-5.5.8/ext$ ls ext_skel ext_skel
以上是php如何寫入插件的詳細內容。更多資訊請關注PHP中文網其他相關文章!