RELATEED CONSULTING
相關咨詢
選擇下列産品馬上(shàng)在線溝通(tōng)
服務時(shí)間(jiān):9:00-18:00
你(nǐ)可(kě)能遇到了下面的問題
關閉右側工具欄
PHP檢查庫或函數(shù)是否可(kě)用的方法
  • 作(zuò)者:admin
  • 發表時(shí)間(jiān):2013-07-02 14:17:32
  • 來(lái)源:未知

随着版本的升高(gāo),PHP的功能也越來(lái)越完善,可(kě)用的擴展庫和(hé)函數(shù)也越來(lái)越多(duō),因此,我們寫程序時(shí)也要考慮版本的兼容問題,同時(shí)還(hái)要考慮服務器(qì)(特别是虛拟主機)是否安裝了擴展庫。

本文介紹的函數(shù)其實是PHP手冊上(shàng)本來(lái)就有(yǒu)的,但(dàn)是由于這些(xiē)函數(shù)獨立性較強,查找不易,所以單獨介紹一下,方便查閱。

1. 獲取所有(yǒu)可(kě)用的模塊 - get_loaded_extensions該函數(shù)返回所有(yǒu)已經加載的(可(kě)用的)模塊。

用法:

print_r(get_loaded_extensions());

2. 獲取指定模塊的可(kě)用函數(shù) - get_extension_funcs 該函數(shù)返回指定模塊所有(yǒu)可(kě)用的函數(shù)。傳入的參數(shù)(模塊名稱)必須是小(xiǎo)寫

用法:

print_r(get_extension_funcs("gd"));

3. 獲取所有(yǒu)已經定義的函數(shù) - get_defined_functions 該函數(shù)返回所有(yǒu)已經定義的函數(shù),包括內(nèi)置函數(shù)和(hé)用戶自定義函數(shù)。

用法:

function myrow($id, $data){ 
return "   $id   $data\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"] 是用戶自定義函數(shù)。

4. 檢查指定函數(shù)是否存在 - function_exists 該函數(shù)返回指定函數(shù)是否已經定義。

用法:

if (function_exists('imap_open')) {
	echo "IMAP functions are available.
\n";
} else {
	echo "IMAP functions are not available.
\n";
}