乙個簡單的PHP擴充套件

2021-06-25 14:51:43 字數 2264 閱讀 5352

《php擴充套件開發:安裝php》

《posix定時器:timer_settime() 》

我們先假設業務場景,是需要有這麼乙個擴充套件,提供乙個叫ccvita_string的函式,他的主要作用是返回一段字元。(這個業務場景實在太假,大家就這麼看看吧)對應的php**可能是這樣:

function

ccvita_string

($str

)第一步,生成**

php為了擴充套件開發的方便,提供了乙個類似**生成器的工具ext_skel,具體可以參見說明。

首先我們建立乙個檔案ccvita.skel,它的內容為

string

ccvita_string

(string

str)

就是告訴ext_skel這個東西,我們要做的擴充套件裡面有個函式叫ccvita_string。然後執行

cd 

mooenv

/src

/php

-5.3.8

/ext/./

ext_skel

--extname

=ccvita

--proto

=ccvita

.skel

cd ccvita

/這時候,ccvita這個擴充套件的**框架就已經出來了。

第二步,修改配置

然後修改config.m4檔案將10、11、12三行最前面的dnl刪除掉,就是將

dnl

php_arg_with

(ccvita

,for

ccvita support

,dnl

make

sure that the comment

isaligned

:dnl [--

with

-ccvita

include

ccvita support

])修改為

php_arg_with

(ccvita

,for

ccvita support

,make

sure that the comment

isaligned:[

--with

-ccvita

include

ccvita support

])第三步,實現功能

修改原始碼ccvita.c檔案

找到將ccvita_string這個函式修改為

php_function

(ccvita_string

)第四步,編譯擴充套件

儲存後,開始編譯

/usr/

local

/php

/bin

/phpize

./configure

--with

-php

-config

=/usr/

local

/php

/bin

/php

-config

make

第五步,新增擴充套件

這時候,一切順利的話,該擴充套件已經在modules/ccvita.so這個位置了。下面就是將這個擴充套件加入到php中去,讓我們php程式可以呼叫到。

cp

modules

/ccvita

.so

/usr

/local

/php

/ext

/vim

/usr

/local

/php

/etc

/php

.ini

extension

=/usr/

local

/php

/ext

/ccvita

.so

#在php.ini檔案最後增加這一行

service

php-fpm

restart

#重啟php服務

cp ccvita

.php

/data

/www

/wwwroot

/default

/

乙個簡單php擴充套件介紹與開發教程

我們使用php擴充套件,主要目的www.cppcns.com是提高程式的執行效率,對於訪問量很大的 或者邏輯將其寫成擴充套件。在做專案的過cjfxl程中,需要對資料進行排序,資料運算比較複雜 我們準備對一百萬個資料進行排序,下面是我在程式之前做的乙個測試 首先使用php程式生成一百萬的隨機數,並將其...

php src 乙個Php擴充套件的結構

內容均以php5.6.14為例.要擁有乙個php擴充套件的架子,使用原始碼中準備好的 ext ext skel 工具,可以生成乙個可執行的擴充套件骨架。不加選項執行 ext skel,可檢視所有可用選項的幫助文字。意思是使用自己的擴充套件要經過這8步,但 buildconf 是在 php src 內...

開發乙個小的php擴充套件

今天試了一下在php新增擴充套件,看了挺多資料,細節上不一致,其他大體是差不多的。我們來開發乙個叫ccvita string的函式,他的主要作用是返回一段字元,對應的php 可能如此 function ccvita string str 即生成鏈結 第一步,生成 進入php源 中自帶的工具ext s...