PHP擴充套件起步之sayhi

2021-06-23 08:54:27 字數 694 閱讀 9294

只怪自己興趣太濃厚,啥都想搞點,一晃六年多過去了。

08年開始寫php擴充套件,之後就一直沒寫過。翻到之前的筆記從新記錄下。

現在php已經發展到5.5了,最新的phpng,也已經在php7中開始動工了。

git clone git:  

2.進入到ext目錄下,使用

./ext_skel -extname=say_hi

之後會生成框架的主體,你可以看到有say_hi目錄出現

vim config.m4

注意看提示,dnl是注釋的意思

—with —enable的區別,找到合適你的把注釋去掉

區別在於你是否引入了其他外部元件,如果沒有就使用—enable

你需要在say_hi.c中修改如下部分 

a)phpinfo中的鉤子 

php_minfo_function 

b)php_function

c)註冊zend_function_entry

然後就是常用的編譯擴充套件步驟 

phpize

./configure 

./make && make install

成功後你會看到有say_hi.so生成

你可以通過

a)phpinfo()檢視

b)php -m

c) php -r 「say_hi(『aaa』)"

參考位址

起步 學習php擴充套件開發的背景

php是解釋性語言,不需要編譯。對於用php寫的產品,如果需要直接原始碼安裝到客戶的執行環境中,則存在很大的安全隱患。客戶甚至可以把你的產品直接做二次部署或者銷售。目前我們公司就遇到這個問題。1.利用zend guard2.開發php擴充套件 php是用c語言實現的,php流行的很大乙個原因也是因為...

PHP擴充套件之Filter詳解

filter,它的作用就和他的名字一樣 過濾。filter內建了多個常用過濾器,根據過濾器功能的不同,可以分成淨化過濾器 sanitization 和驗證過濾器 validation 兩種。兩種的差別在於,淨化過濾器會把被過濾的變數中不符合規則的東西清除掉,返回清除後的內容 而驗證過濾器只是驗證的功...

php擴充套件的安裝之phpize

安裝php fastcgi模式 的時候,常常有這樣一句命令 usr local webserver php bin phpize 一 phpize是幹嘛的?phpize是什麼東西呢?php官方的說明 phpize是用來擴充套件php擴充套件模組的,通過phpize可以建立php的外掛程式模組 比如你...