PHP 檢查擴(kuò)展庫(kù)或函數(shù)是否可用的代碼
更新時(shí)間:2010年04月06日 13:14:58 作者:
隨著版本的升高,PHP的功能也越來(lái)越完善,可用的擴(kuò)展庫(kù)和函數(shù)也越來(lái)越多,因此,我們寫(xiě)程序時(shí)也要考慮版本的兼容問(wèn)題,同時(shí)還要考慮服務(wù)器(特別是虛擬主機(jī))是否安裝了擴(kuò)展庫(kù)。
本文介紹的函數(shù)其實(shí)是PHP手冊(cè)上本來(lái)就有的,但是由于這些函數(shù)獨(dú)立性較強(qiáng),查找不易,所以單獨(dú)介紹一下,方便查閱。
1. 獲取所有可用的模塊 - get_loaded_extensions 該函數(shù)返回所有已經(jīng)加載的(可用的)模塊。
用法:
print_r(get_loaded_extensions());
2. 獲取指定模塊的可用函數(shù) - get_extension_funcs 該函數(shù)返回指定模塊所有可用的函數(shù)。傳入的參數(shù)(模塊名稱(chēng))必須是小寫(xiě)
用法:
print_r(get_extension_funcs("gd"));
3. 獲取所有已經(jīng)定義的函數(shù) - get_defined_functions 該函數(shù)返回所有已經(jīng)定義的函數(shù),包括內(nèi)置函數(shù)和用戶(hù)自定義函數(shù)。
用法:
function myrow($id, $data){
return "<tr><th>$id</th><td>$data</td></tr>\n";
}
$arr = get_defined_functions();
print_r($arr);
輸出:
Array
(
[internal] => Array
(
[0] => zend_version
[1] => func_num_args
[2] => func_get_arg
[3] => func_get_args
[4] => strlen
[5] => strcmp
[6] => strncmp
...
[750] => bcscale
[751] => bccomp
)
[user] => Array
(
[0] => myrow
)
)
其中 $arr["internal"] 是內(nèi)置函數(shù), $arr["user"] 是用戶(hù)自定義函數(shù)。
4. 檢查指定函數(shù)是否存在 - function_exists 該函數(shù)返回指定函數(shù)是否已經(jīng)定義。
用法:
if (function_exists('imap_open')) {
echo "IMAP functions are available.<br />\n";
} else {
echo "IMAP functions are not available.<br />\n";
}
1. 獲取所有可用的模塊 - get_loaded_extensions 該函數(shù)返回所有已經(jīng)加載的(可用的)模塊。
用法:
復(fù)制代碼 代碼如下:
print_r(get_loaded_extensions());
2. 獲取指定模塊的可用函數(shù) - get_extension_funcs 該函數(shù)返回指定模塊所有可用的函數(shù)。傳入的參數(shù)(模塊名稱(chēng))必須是小寫(xiě)
用法:
復(fù)制代碼 代碼如下:
print_r(get_extension_funcs("gd"));
3. 獲取所有已經(jīng)定義的函數(shù) - get_defined_functions 該函數(shù)返回所有已經(jīng)定義的函數(shù),包括內(nèi)置函數(shù)和用戶(hù)自定義函數(shù)。
用法:
復(fù)制代碼 代碼如下:
function myrow($id, $data){
return "<tr><th>$id</th><td>$data</td></tr>\n";
}
$arr = get_defined_functions();
print_r($arr);
輸出:
復(fù)制代碼 代碼如下:
Array
(
[internal] => Array
(
[0] => zend_version
[1] => func_num_args
[2] => func_get_arg
[3] => func_get_args
[4] => strlen
[5] => strcmp
[6] => strncmp
...
[750] => bcscale
[751] => bccomp
)
[user] => Array
(
[0] => myrow
)
)
其中 $arr["internal"] 是內(nèi)置函數(shù), $arr["user"] 是用戶(hù)自定義函數(shù)。
4. 檢查指定函數(shù)是否存在 - function_exists 該函數(shù)返回指定函數(shù)是否已經(jīng)定義。
用法:
復(fù)制代碼 代碼如下:
if (function_exists('imap_open')) {
echo "IMAP functions are available.<br />\n";
} else {
echo "IMAP functions are not available.<br />\n";
}
您可能感興趣的文章:
- php smarty函數(shù)擴(kuò)展
- 編寫(xiě)自己的php擴(kuò)展函數(shù)
- 非常實(shí)用的php彈出錯(cuò)誤警告函數(shù)擴(kuò)展性強(qiáng)
- PHP鏈接MySQL的常用擴(kuò)展函數(shù)
- php實(shí)現(xiàn)jQuery擴(kuò)展函數(shù)
- PHP7擴(kuò)展開(kāi)發(fā)之基于函數(shù)方式使用lib庫(kù)的方法詳解
- PHP獲取和操作配置文件php.ini的幾個(gè)函數(shù)介紹
- PHP配置文件中最常用四個(gè)ini函數(shù)
- PHP最常用的ini函數(shù)分析 針對(duì)PHP.ini配置文件
- PHP 的幾個(gè)配置文件函數(shù)
- PHP parse_ini_file函數(shù)的應(yīng)用與擴(kuò)展操作示例
相關(guān)文章
PHP類(lèi)的聲明與實(shí)例化及構(gòu)造方法與析構(gòu)方法詳解
這篇文章主要介紹了PHP類(lèi)的聲明與實(shí)例化及構(gòu)造方法與析構(gòu)方法,結(jié)合實(shí)例形式分析了PHP面向?qū)ο箢?lèi)的聲明與使用相關(guān)技巧,需要的朋友可以參考下2016-01-01
PHP實(shí)現(xiàn)圖片自動(dòng)清理的方法
這篇文章主要介紹了PHP實(shí)現(xiàn)圖片自動(dòng)清理的方法,可實(shí)現(xiàn)清除固定日期內(nèi)沒(méi)有訪問(wèn)的圖片,具有一定參考借鑒價(jià)值,需要的朋友可以參考下2015-07-07
PHP大小寫(xiě)問(wèn)題:函數(shù)名和類(lèi)名不區(qū)分,變量名區(qū)分
這篇文章主要介紹了PHP大小寫(xiě)問(wèn)題,php中變量名是區(qū)分大小寫(xiě)的,而函數(shù)名與類(lèi)名是不區(qū)分的2013-06-06
PHP實(shí)現(xiàn)表單提交時(shí)去除斜杠的方法
這篇文章主要介紹了PHP實(shí)現(xiàn)表單提交時(shí)去除斜杠的方法,涉及php針對(duì)頁(yè)面表單提交元素過(guò)濾操作的相關(guān)技巧,需要的朋友可以參考下2016-12-12
php如何比較兩個(gè)浮點(diǎn)數(shù)是否相等詳解
這篇文章主要給大家介紹了關(guān)于php如何比較兩個(gè)浮點(diǎn)數(shù)是否相等的相關(guān)資料,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2019-02-02

