摘要:前面兩篇介紹了,從此可以開發(fā)自己的擴(kuò)展了,可畢竟是通過轉(zhuǎn)換而來,雖然很方便,可對于擴(kuò)展還是一知半解,也無法判斷其好壞,所以還是要了解下用原生的方法是怎么開發(fā)一個擴(kuò)展的。這樣我們就創(chuàng)建了一個非常簡單的擴(kuò)展,雖是很簡單的擴(kuò)展,可還是比復(fù)雜很多。
前面兩篇介紹了 Zephir ,從此可以開發(fā)自己的擴(kuò)展了,可畢竟是通過轉(zhuǎn)換而來,雖然很方便,可對于擴(kuò)展還是一知半解,也無法判斷其好壞,所以還是要了解下用原生的方法是怎么開發(fā)一個 PHP 擴(kuò)展的。
本文以 php-7.2.15 為例
創(chuàng)建擴(kuò)展骨架
# 源碼路徑 cd /usr/local/src/php-7.2.15/ext ./ext_skel --extname=twinkle_log
提示如下
提示已創(chuàng)建好基礎(chǔ)文件,如果想使用這個新擴(kuò)展,需要噼里啪啦這么些布驟,先記著就好。
修改config.m4
cd twinkle_log vi config.m4
這兩塊注釋選一個先打開,具體含義后面文章再說明,我們選下面的
創(chuàng)建自己的方法
vi twinkle_log.c
聲明該方法
注意大小寫敏感
編譯安裝
/usr/local/php72/bin/phpize ./configure --with-php-config=/usr/local/php72/bin/php-config make make install
填加擴(kuò)展
vi /usr/local/php72/lib/php.ini # 填加擴(kuò)展 extension=twinkle_log
測試一下
擴(kuò)展安裝成功
執(zhí)行腳本
php -f test.php執(zhí)行成功。
這樣我們就創(chuàng)建了一個非常簡單的擴(kuò)展,雖是很簡單的擴(kuò)展,可還是比 Zephir 復(fù)雜很多。
當(dāng)然他啥用也沒有,沒有涉汲到內(nèi)存管理,沒有使用指針,做了這一些操作,也不知道是啥意思,帶著疑問,我們慢慢深入研究。
文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請注明本文地址:http://m.hztianpu.com/yun/30951.html
摘要:下載源代碼要開發(fā)擴(kuò)展,需要先下載的源代碼,一方面是因?yàn)槲覀兊臄U(kuò)展一般會用到自身定義的函數(shù)和宏,另一方面我們可以利用官方提供的工具減少工作量。重點(diǎn)關(guān)注,,即可,最簡單的場景下這三個文件就是一個擴(kuò)展的全部組成部分了。 下載PHP源代碼 要開發(fā)PHP擴(kuò)展,需要先下載PHP的源代碼,一方面是因?yàn)槲覀兊臄U(kuò)展一般會用到PHP自身定義的函數(shù)和宏,另一方面我們可以利用官方提供的工具減少工作量。我下載了...
摘要:四使用語言開發(fā)是我重點(diǎn)推薦的擴(kuò)展開發(fā)框架,簡明易懂,功能強(qiáng)大,開發(fā)效率高,代碼易維護(hù),執(zhí)行速度快。優(yōu)點(diǎn)三支持,的擴(kuò)展開發(fā)有兩套擴(kuò)展開發(fā)框架,分別支持,,雖然框架代碼有兩個,但是接口卻是一樣的。 PHP擴(kuò)展是高級PHP程序員必須了解的技能之一,對于一個初入門的PHP擴(kuò)展開發(fā)者,怎么才能開發(fā)一個成熟的擴(kuò)展,進(jìn)入PHP開發(fā)的高級領(lǐng)域呢?本系列開發(fā)教程將手把手帶您從入門進(jìn)入高級階段。本教程系列...
摘要:二下載第一個擴(kuò)展第一個擴(kuò)展的源碼已經(jīng)在上準(zhǔn)備好了,直接用命令克隆,或者手工下載都可以。第四步確認(rèn)擴(kuò)展已經(jīng)安裝成功使用命令可以查看目前已經(jīng)安裝的所有擴(kuò)展。 PHP擴(kuò)展是高級PHP程序員必須了解的技能之一,對于一個初入門的PHP擴(kuò)展開發(fā)者,怎么才能開發(fā)一個成熟的擴(kuò)展,進(jìn)入PHP開發(fā)的高級領(lǐng)域呢?本系列開發(fā)教程將手把手帶您從入門進(jìn)入高級階段。本教程系列在linux下面開發(fā)(推薦使用cento...
摘要:起步最近在看擴(kuò)展開發(fā)中文教程的版。擴(kuò)展是什么用過的人一定也用過擴(kuò)展。本身帶有個擴(kuò)展,擴(kuò)展是對語言功能的一個延伸,的核心由兩部分組成最底層的引擎和內(nèi)核。額外不使用工具寫擴(kuò)展一個擴(kuò)展為避免與寫過的沖突,采用作為名字,至少包含個文件。 起步 最近在看 《PHP擴(kuò)展開發(fā)中文教程》 的pdf版。PHP的解釋器是用C語言寫的,所以PHP擴(kuò)展自然也是用C 語言了。 擴(kuò)展是什么 用過php的人一定也用...
摘要:概述是一個開源的用于簡化擴(kuò)展的創(chuàng)建和維護(hù)的語言。它使得不擅長的開發(fā)人員也能寫出擴(kuò)展。是縮寫,讀音為。然后我們在里調(diào)用方法正常的話會輸出。至此我們也完成了我們的第一個擴(kuò)展。 概述 Zephir是一個開源的用于簡化PHP擴(kuò)展的創(chuàng)建和維護(hù)的語言。它使得不擅長C/C++的PHP開發(fā)人員也能寫出PHP擴(kuò)展。Zephir是Zend Engine/PHP/Intermediate縮寫,讀音為zep...
閱讀 2222·2021-10-12 10:11
閱讀 915·2021-10-09 09:41
閱讀 3900·2021-09-09 11:37
閱讀 2034·2021-09-08 10:41
閱讀 2700·2019-08-30 12:58
閱讀 2429·2019-08-30 10:58
閱讀 1357·2019-08-26 13:40
閱讀 4256·2019-08-26 13:36