當前位置:首頁 » 編程語言 » php類擴展類

php類擴展類

發布時間: 2022-06-24 13:10:17

㈠ 如何寫一個php擴展

一、首先下載PHP源碼包,假設源碼包目錄為:/software/php-5.2.13
一、首先下載PHP源碼包,假設源碼包目錄為:/software/php-5.2.13
#> cd /software/php-5.2.13/ext
二、假設我們要開發一個名為caleng_mole的擴展,該擴展包含兩個函數:a--處理兩個整型相加和b-處理字元串重復輸出;
1、首先編寫一個函數定義文件,該文件編寫函數原型後綴為def,假設為:caleng_mole.def
int a(int x, int y)
string b(string str, int n)
2、通過擴展骨架生成器,將在ext目錄下自動建立擴展目錄caleng_mole

㈡ 如何編寫PHP擴展

PHP取得成功的一個主要原因之一是她擁有大量的可用擴展。web開發者無論有何種需求,這種需求最有可能在PHP發行包里找到。PHP發行包包括支持各種資料庫,圖形文件格式,壓縮,XML技術擴展在內的許多擴展。
擴展API的引入使PHP3取得了巨大的進展,擴展API機制使PHP開發社區很容易的開發出幾十種擴展。現在,兩個版本過去了,API仍然和PHP3時的非常相似。擴展主要的思想是:盡可能的從擴展編寫者那裡隱藏PHP的內部機制和腳本引擎本身,僅僅需要開發者熟悉API。
有兩個理由需要自己編寫PHP擴展。第一個理由是:PHP需要支持一項她還未支持的技術。這通常包括包裹一些現成的C函數庫,以便提供PHP介面。例如,如果一個叫FooBase的資料庫已推出市場,你需要建立一個PHP擴展幫助你從PHP里調用FooBase的C函數庫。這個工作可能僅由一個人完成,然後被整個PHP社區共享(如果你願意的話)。第二個不是很普遍的理由是:你需要從性能或功能的原因考慮來編寫一些商業邏輯。
如果以上的兩個理由都和你沒什麼關系,同時你感覺自己沒有冒險精神,那麼你可以跳過本章。
本章教你如何編寫相對簡單的PHP擴展,使用一部分擴展API函數。對於大多數打算開發自定義PHP擴展開發者而言,它含概了足夠的資料。學習一門編程課程的最好方法之一就是動手做一些極其簡單的例子,這些例子正是本章的線索。一旦你明白了基礎的東西,你就可以在互聯網上通過閱讀文擋、原代碼或參加郵件列表新聞組討論來豐富自己。因此,本章集中在讓你如何開始的話題。在UNIX下一個叫ext_skel的腳本被用於建立擴展的骨架,骨架信息從一個描述擴展介面的定義文件中取得。因此你需要利用UNIX來建立一個骨架。Windows開發者可以使用Windows ext_skel_win32.php代替ext_skel。
然而,本章關於用你開發的擴展編譯PHP的指導僅涉及UNIX編譯系統。本章中所有的對API的解釋與UNIX和Windows下開發的擴展都有聯系。

㈢ php 怎麼安裝擴展

在windows平台上,主要是三個步驟:

1、下載php擴展庫文件;

一般在http://pecl.php.net/上就有下載信息。

2、解壓縮文件,將*.dll文件復制到PHP程序主目錄下的「ext」或者「extension」目錄。

3、打開php.ini文件,在「Dynamic Extensions」配置段中加上「extension=*.dll」,關閉文件,重新啟動一下伺服器就可以載入成功了。

㈣ PHP的擴展模塊怎麼添加

在PHP/etc 文件夾中加入擴展
在PHP 文件夾下的php.ini文件里 有很多dll文件的地方加入一行 你所添加的擴展的名字xxxx.dll

或者 是 在php.ini中直接打開對應的擴展 ,將目標行的 ; 給去掉
哦,對了,最後記得要重新啟動PHP的伺服器

㈤ php5.6.25 php_win32api.dll擴展類

一、准備工作 上pkgs/download/nginx-1/download/nginx-1206/get/php-5.4.14.tar.gz/from/this/mirror // 解壓 [root@pangou php]# tar -zxvf php-5.4.14.tar.gz 安裝依賴包 [root@pangou php]# yum install -y libxml2-devel libjpeg-devel libpng-devel freetype-devel openssl-devel libcurl-devel libmcrypt-devel 編譯php [root@pangou php]# ls php-5.4.14 php-5.4.14.tar.gz [root@pangou php]# cd php-5.4.14 [root@pangou php-5.4.14]# pwd /root/Downloads/php/php-5.4.14 [root@pangou php-5.4.14]# ls acinclude.m4 CREDITS ltmain.sh NEWS README.MAILINGLIST_RULES README.TESTING stamp-h.in aclocal.m4 ext main pear README.namespaces README.TESTING2 stub.c build EXTENSIONS makedist php5.spec.in README.NEW-OUTPUT-API README.UNIX-BUILD-SYSTEM svnclean.bat buildconf footer Makefile.frag php.gif README.PARAMETER_PARSING_API README.WIN32-BUILD-SYSTEM tests buildconf.bat generated_lists Makefile.gcov php.ini-development README.PHP4-TO-PHP5-THIN-CHANGES run-tests.php TSRM CODING_STANDARDS genfiles Makefile.global php.ini-proction README.REDIST.BINS sapi UPGRADING config.guess header makerpm README.EXTENSIONS README.RELEASE_PROCESS scripts UPGRADING.INTERNALS config.sub INSTALL missing README.EXT_SKEL README.SELF-CONTAINED-EXTENSIONS server-tests-config.php vcsclean configure install-sh mkinstalldirs README.GIT-RULES README.STREAMS server-tests.php win32 configure.in LICENSE netware README.input_filter README.SUBMITTING_PATCH snapshot Zend [root@pangou php-5.4.14]# ./configure --prefix=/opt/php --with-config-file-path=/opt/php/etc --with-mysql=/usr/ --with-mysqli=/usr/bin/mysql_config --with-iconv-dir --with-freetype-dir --with-jpeg-dir --with-png-dir --with-zlib --with-libxml-dir=/usr --enable-xml --disable-rpath --enable-discard-path --enable-magic-quotes --enable-safe-mode --enable-bcmath --enable-shmop --enable-sysvsem --enable-inline-optimization --with-curl --with-curlwrappers --enable-mbregex --enable-fastcgi --enable-fpm --enable-force-cgi-redirect --enable-mbstring --with-mcrypt --enable-ftp --with-gd --enable-gd-native-ttf --with-openssl --with-mhash --enable-pcntl --enable-sockets --with-xmlrpc --enable-zip --enable-soap --without-pear --with-gettext --with-mime-magic // 編譯時間可能有點長。。。 // 編譯成功後,安裝 [root@pangou php-5.4.14]# make && make install // 安裝時間也比較長 安裝成功後,php的位置就應該在/opt/php目錄下,接下去就是配置 // 復制配置文件到配置目錄下 [root@pangou php-5.4.14]# cp /root/Downloads/php/php-5.4.14/php.ini-proction /opt/php/etc/php.ini [root@pangou php-5.4.14]# cp /opt/php/etc/php-fpm.conf.default /opt/php/etc/php-fpm.conf [root@pangou php-5.4.14]# cd /opt/php/etc/ [root@pangou etc]# ls php-fpm.conf php-fpm.conf.default php.ini // 然後配置nginx的配置文件,讓其可以運行php [root@pangou etc]# cd /opt/nginx/conf/ [root@pangou conf]# ls fastcgi.conf fastcgi_params koi-utf mime.types nginx.conf scgi_params uwsgi_params win-utf fastcgi.conf.default fastcgi_params.default koi-win mime.types.default nginx.conf.default scgi_params.default uwsgi_params.default [root@pangou conf]# vim nginx.conf 1、去掉 #user nobody; 的#號, 變成 user nobody; 2、去掉 #location ~ .php$ { # root html; # fastcgi_pass 127.0.0.1:9000; # fastcgi_index index.php; # fastcgi_param SCRIPT_FILENAME /scripts$fastcgi_script_name; # include fastcgi_params; #} 之前的#號, 並修改 fastcgi_param SCRIPT_FILENAME /scripts$fastcgi_script_name; 為 fastcgi_param SCRIPT_FILENAME /opt/nginx/html$fastcgi_script_name; 最終修改後的內容為: location ~ .php$ { root html; fastcgi_pass 127.0.0.1:9000; fastcgi_index index.php; fastcgi_param SCRIPT_FILENAME /opt/nginx/html$fastcgi_script_name; include fastcgi_params; } 重啟nginx服務,並開啟php-fpm [root@pangou ~]# /opt/nginx/sbin/nginx [root@pangou ~]# /opt/php/sbin/php-fpm // 創建phpinfo文件 [root@pangou ~]# vim /opt/nginx/html/phpinfo.php 內容為 phpinfo(); ?> 訪問127.0.0.1/phpinfo.php 安裝成功。mysql,mysqli等擴展都有。 這邊有一點偷懶,並沒有編譯安裝mysql,而是使用yum安裝的mysql。

㈥ php常用擴展有哪些

php基本使用到的擴展有如下:

bcmath(精確數值處理)

bz2

calendar

Core

ctype

curl

date

dom

ereg

exif

fileinfo

filter

ftp

gettext

hash

iconv

igbinaryinotify 文件監控

json

libxml

mbstring

mhash

mysql

mysqli

mysqlnd

openssl

pcntl

pcre

PDO

pdo_mysql

pdo_sqlite

Phar

posix

readline

redis Redis緩存

Reflection

session

shmop

SimpleXML

sockets

SPL

sqlite3

standard

sysvmsg

sysvsem

sysvshmswoole 通信引擎

tokenizer

wddx

xml

xmlreader

xmlwriter

xslyaf YAF框架必須

zip

zlib

其中最常用的擴展有:curl date json mysql mysqli openssl pdo_mysql redis session zip等

查看當前php安裝了哪些擴展,可以使用命令:php -m

㈦ 麻煩問一下PHP中,PHP自帶的擴展和類庫是一種東西嗎

1. 一般來說,php的類庫使用的還是php語言編寫的,因此一般使用include/require導入。

2. php的擴展庫的導入一般是在php.ihi里導入,比如,gd2庫的載入:

[PHP_GD2]
extension=php_gd2.dll

PHP官方擴展類庫是PEAR和PECL,你可以搜索相關資料。

㈧ 「PHP中擴展庫」是什麼意思如何載入

擴展庫是php擴展的功能,比如php本來不支持操作某種功能 ,但在新版本想對它提供支持,就以擴展的方式來提供,這樣,我們在配置php時,如果我們不用此功能,我們就可以讓php不載入他.從而節省伺服器資源.提供其性能
php的擴展庫一般放在php目錄下的ext目錄里.你在網上下載的php壓縮包解壓後應該可以看到.
php.ini中的 extension_dir 用來指定你的擴展名的地址 。
php.ini中有一排像 ;extension="xxxxxx.dll" 的內容就是用來配置讓你的php運行環境支持什麼不支持什麼。
以下為php.ini中的剪切段
------------------------------
;extension=php_bz2.dll
;extension=php_curl.dll
;extension=php_dba.dll
;extension=php_dbase.dll
;extension=php_exif.dll
;extension=php_fdf.dll
;extension=php_gd2.dll //php對圖片操作的擴展
;extension=php_gettext.dll
;extension=php_gmp.dll
;extension=php_ifx.dll
;extension=php_imap.dll
;extension=php_interbase.dll
;extension=php_ldap.dll
;extension=php_mbstring.dll
;extension=php_mcrypt.dll
;extension=php_mhash.dll
;extension=php_mime_magic.dll
;extension=php_ming.dll
;extension=php_msql.dll
;extension=php_mssql.dll //php操作mssql (sql server)資料庫的擴展
;extension=php_mysql.dll //php操作mysql資料庫的擴展
------------------------------
要讓php支持某種功能,把extension前面的 " ; "號去掉,重啟apache或iis即可。

㈨ PHP類的引用與擴展如何使用

PHP中類的引用在PHP中使用new關鍵字進行類的引用。對於類中的函數和屬性使用「->」調用。

熱點內容
ios應用上傳 發布:2024-09-08 09:39:41 瀏覽:438
ios儲存密碼哪裡看 發布:2024-09-08 09:30:02 瀏覽:870
opensslcmake編譯 發布:2024-09-08 09:08:48 瀏覽:653
linux下ntp伺服器搭建 發布:2024-09-08 08:26:46 瀏覽:744
db2新建資料庫 發布:2024-09-08 08:10:19 瀏覽:173
頻率計源碼 發布:2024-09-08 07:40:26 瀏覽:780
奧迪a6哪個配置帶後排加熱 發布:2024-09-08 07:06:32 瀏覽:101
linux修改apache埠 發布:2024-09-08 07:05:49 瀏覽:209
有多少個不同的密碼子 發布:2024-09-08 07:00:46 瀏覽:566
linux搭建mysql伺服器配置 發布:2024-09-08 06:50:02 瀏覽:995