php擴展庫
㈠ php中擴展庫是什麼意思
就是擴展PHP功能的各種文件,如果你有特殊要求也可以自己寫,好處就是擴展庫因為用c語言寫的,運行速度巨快
㈡ php常用擴展有哪些
這個是php擴展庫支持。
在php.ini裡面可以看到952行。
extension=php_rar.dll
;extension=php_bz2.dll
extension=php_curl.dll
;extension=php_dba.dll
;extension=php_exif.dll
;extension=php_fileinfo.dll
extension=php_gd2.dll
;extension=php_gettext.dll
;extension=php_gmp.dll
;extension=php_intl.dll
;extension=php_imap.dll
;extension=php_interbase.dll
extension=php_ldap.dll
extension=php_mbstring.dll
;extension=php_ming.dll
;extension=php_mssql.dll
extension=php_mysql.dll
extension=php_mysqli.dll
;extension=php_oci8.dll
;extension=php_oci8_11g.dll
extension=php_openssl.dll
;extension=php_pdo_firebird.dll
;extension=php_pdo_mssql.dll
extension=php_pdo_mysql.dll
;extension=php_pdo_oci.dll
;extension=php_pdo_odbc.dll
;extension=php_pdo_pgsql.dll
extension=php_pdo_sqlite.dll
;extension=php_pgsql.dll
;extension=php_phar.dll
;extension=php_pspell.dll
;extension=php_shmop.dll
;extension=php_snmp.dll
;extension=php_soap.dll
extension=php_sockets.dll
;extension=php_sqlite.dll
;extension=php_sqlite3.dll
;extension=php_sybase_ct.dll
;extension=php_tidy.dll
;extension=php_xmlrpc.dll
;extension=php_xsl.dll
;extension=php_zip.dll
extension= php_memcache.dll
每一行前面分號去掉的表示開啟擴展庫的。
有些擴展庫是安裝的時候默認開啟的,有些需要手動開啟。
還有一些擴展庫需要自己去下載庫文件(要對應相應的版本)
下載的庫文件放在php安裝根目錄下面的ext目錄下面。當然這個目錄也是可以自己配置的。
㈢ 如何設置PHP擴展的目錄
當伺服器上PHP已經安裝好,需要額外添加PHP擴展時怎麼辦?不需要重新安裝PHP,有了phpize我們可以在原有的PHP基礎之上直接安裝擴展庫。
這次編譯僅僅只是單獨編譯PHP的擴展庫,接下來將編譯好的擴展庫加入到現在運行的php中,不對現在運行的php重新編譯,所以沒有一點的影響。
下面我們演示安裝xsl的擴展(不一定常用,僅做為一個範例)
做法一:
1.找到當前運行的php版本的源代碼目錄,如php-5.2.3。進入xsl擴展庫目錄。
$cd /home/pkgs/php-5.3.3/ext/xsl
2.調用phpize程序生成編譯配置文件。
$/home/app/php5.3.3/bin/phpize
3.編譯擴展庫,分別執行下面的configure和make命令。
$./configure-with-php-config=/home/app/php5.3.3/bin/php-config
這一步執行通過後,再執行make命令,如果configure執行不通過,則查找錯誤原因。
$make
#make成功執行後,生成的擴展庫文件在當前目錄的 moles子目錄下,
如/home/php-5.3.3/ext/curl/moles/xsl.so
4.配置php.ini文件
#將編譯好的擴展庫文件復制到PHP的擴展目錄下,可通過查看phpinfo信息。。
$ cp /home/pkg/php-5.3.3/ext/xsl/moles/xsl.so /home/app/php5.3.3/lib/php/extensions/no-debug-non-zts-20090626
#在php.ini文件中找到設置擴展目錄的位置,然後將擴展路徑設置到php安裝目錄/extension/no-debug-non....目錄下,並添加擴展庫位置。
extension_dir /home/app/php5.3.3/lib/php/extensions/no-debug-non-zts-20090626」
extension=xsl.so
5.重啟php,查看phpinfo信息,即可看到剛才添加進去的xsl擴展庫。(如果有多個php-fpm進程的話,平滑重啟主進程即可:kill -USR2 pid)
㈣ 用wampserver配置PHP環境,想使用PHP的mcrypt加密擴展庫進行加密應該怎麼安裝擴展庫
你查下官方得手冊,裡面有安裝說明,
你需要使用 libmcrypt 2.5.6 或更高版本。
PHP 5.2 的 Windows 二進制發行版中已經包含了本庫。 PHP 5.3 的 Windows 二進制發行版中開始使用 MCrypt 靜態庫, 所以不再需要 DLL。
這個庫已經被已經被打包進php裡面了,所以不用再安裝擴展可以直接使用裡面得函數了
㈤ PHP中2個加密擴展庫openssl mcrypt有何區別
Mcrypt擴展庫可以實現加密解密功能,就是既能將明文加密,也可以密文還原。 1.安裝PHP加密擴展Mcrypt 要使用該擴展,必須首先安裝mcrypt標准類庫,注意的是mcrypt軟體依賴libmcrypt和mhash兩個庫。 2.PHP加密擴展庫Mcrypt的演算法和加密模式 Mcrypt庫支持20多種加密演算法和8種加密模式,具體可以通過函數mcrypt_list_algorithms()和mcrypt_list_modes()來顯示,結果如下: Mcrypt支持的演算法有:cast-128 gost rijndael-128 twofish arcfour cast-256 loki97 rijndael-192 saferplus wake blowfish-中國pat des rijndael-256 serpent xtea blowfish enigma rc2 tripledes Mcrypt支持的加密模式有:cbc cfb ctr ecb ncfb nofb ofb stream 這些演算法和模式在應用中要以常量來表示,寫的時候加上前綴MCRYPT_和MCRYPT_MODE_來表示,如下面Mcrypt應用的例子: DES演算法表示為MCRYPT_DES; ECB模式表示為MCRYPT_MODE_ECB; 3.PHP加密擴展庫Mcrypt應用 先看一個例子,了解Mcrypt的工作流程,再來看看部分流程使用的函數: <?php $str = "我是李雲"; $key = "123qwe.019860905061X"; $cipher = MCRYPT_RIJNDAEL_128; $mode = MCRYPT_MODE_ECB; $iv = mcrypt_create_iv(mcrypt_get_iv_size($cipher,$mode),MCRYPT_RAND); echo "原文:".$str."
"; $str_encrypt = mcrypt_encrypt($cipher,$key,$str,$mode,$iv); echo "加密後的內容是:".$str_encrypt."
"; $str_decrypt = mcrypt_decrypt($cipher,$key,$str_encrypt,$mode,$iv); echo "解密後的內容:".$str_decrypt."
"; ?> 運行結果: 原文:我是李雲 加密後的內容是:??Z懍e e??? 解密後的內容:我是李雲 //手冊里的寫法: //指定初始化向量iv的大小: $iv_size = mcrypt_get_iv_size(MCRYPT_RIJNDAEL_256, MCRYPT_MODE_ECB); //創建初始化向量: $iv = mcrypt_create_iv($iv_size, MCRYPT_RAND); //加密密碼: $key = "123qwe.019860905061x"; //原始內容(未加密): $text = "My name is Adam Li!"; echo $text. "
\n"; //加密後的內容: $crypttext = mcrypt_encrypt(MCRYPT_RIJNDAEL_256, $key, $text, MCRYPT_MODE_ECB, $iv); echo $crypttext. "\n
"; //解密已經加密的內容: $str_decrypt = mcrypt_decrypt(MCRYPT_RIJNDAEL_256, $key, $crypttext, MCRYPT_MODE_ECB, $iv); echo $str_decrypt; 註:加密和解密函數中的參數cipher、key和mode必須一一對應,否則數據不能被還原。關於MCRYPT_RAND參見筆記Linux中的隨機數文件 /dev/random /dev/urandom。 PHP的Mcrypt擴展的mcrypt_create_iv, 如果你不指定的話, 默認使用/dev/random(Linux上), 作為隨機數產生器. 這里的問題就在於/dev/random, 它的random pool依賴於系統的中斷來產生. 當系統的中斷數不足, 不夠產生足夠的隨機數, 那麼嘗試讀取的進程就會等待, 也就是會阻塞住 當20個並發請求的時候, 伺服器的中斷數不夠, 產生不了足夠的隨機數給mcrypt, 繼而導致PHP進程等待, 從而表現出, 響應時間變長 解決的辦法就是, 改用/dev/urandom, /dev/urandom也是一個產生隨機數的設備, 但是它不依賴於系統中斷。 $ rngd -r /dev/urandom -o /dev/random -t 1 用urandom的結果填充entropy池子,這樣既保證了entropy池的數量,也保證了隨機性 然而, 為什麼PHP使用/dev/random作為默認, 這是因為理論上來說, /dev/urandom在一定的情況下, 可能會被可預測(參看: /dev/random), 所以一般上認為, /dev/urandom不如/dev/random安全
㈥ 如何獲取php擴展庫源代碼包
您需要告訴構建系統在編譯時鏈接到共享庫。這允許依賴項存儲在已編譯的PHP擴展中,在第一次使用時將載入它。
為此,您需要修改config.m4以添加庫。你可以通過PHP_ADD_LIBRARY宏來做到這一點。此宏將一個庫添加到鏈接行並具有該表單PHP_ADD_LIBRARY($name,$append,$var)。第一個參數是庫的名稱; 這是*.so沒有lib前綴的文件的名稱(例如xxx)。第二個參數確定(我推測)是否附加或覆蓋該行; 這應該通常設置為1。最後一個參數是存儲該行的變數名稱。必須將此變數替換為輸出文件PHP_SUBST。
您應該將PHP_ADD_LIBRARY行放在文件中PHP_NEW_EXTENSION宏之前的某個位置config.m4。另外,PHP_ADD_LIBRARY在PHP_CHECK_LIBRARY電話中打包是個好主意。這可確保構建系統在添加庫之前找到庫。請參閱下面的示例。
這是另一個類似於你的SO問題。它有一些你可以遵循的工作實例。另外,我將在這里包含一個簡單示例:
PHP_CHECK_LIBRARY(xxx,xxxfunction,[
PHP_ADD_LIBRARY(xxx,1,XXX_SHARED_LIBADD)],[
AC_MSG_ERROR([])],[])PHP_SUBST([XXX_SHARED_LIBADD])
注意:第二個參數PHP_CHECK_LIBRARY是一個函數,構建系統將檢查它是否找到給定的庫。
㈦ phpstudy安裝imagick擴展庫怎麼裝
phpstudy安裝imagick擴展庫的過程:
1、到imagemagick官網下載imagemagickwindows安裝包:
10、出現224就證明安裝成功。
㈧ PHP的擴展模塊怎麼添加
在PHP/etc 文件夾中加入擴展
在PHP 文件夾下的php.ini文件里 有很多dll文件的地方加入一行 你所添加的擴展的名字xxxx.dll
或者 是 在php.ini中直接打開對應的擴展 ,將目標行的 ; 給去掉
哦,對了,最後記得要重新啟動PHP的伺服器
㈨ 如何安裝PHP的pear擴展
pear是php的擴展和應用程序庫,包含了很多有用的類,安裝好php5.0後,pear實際上並沒有被安裝,安裝的方法如下:
1.在php目錄中雙擊go-pear.bat。
2.按照提示輸入一些設置信息,主要是要把區域網的網關加上,如http://192.168.0.1:80/
,pear要用這個地址訪問internet,若無代理伺服器則直接回車
3.然後會提示一些包和php綁定,選擇y
。
4.然後安裝基本包和提示安裝成功,就這么簡單。
5.打開windows目錄下的php.ini文件,然後查找到如下的地方:
;
unix:
"/path1:/path2"
;include_path
=
".:/php/includes"
;
;
windows:
"path1;path2"
;include_path
=
".;c:phpincludes"
把最後一行的注釋去掉,然後把後面路徑改成你的pear路徑,例如:
include_path
=
".;c:phppear"
保存php.ini,然後重新啟動apache即可。
㈩ 「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即可。