您的位置:首页 > 编程语言 > PHP开发

获取开启的所有PHP扩展及该扩展下的函数

2017-02-20 16:35 483 查看

get_loaded_extensions — 返回所有编译并加载模块名的 array

array get_loaded_extensions ([ bool $zend_extensions = false ] )


该函数返回了 PHP 解析器里所有编译并加载的模块名。


说明

array get_loaded_extensions ([ bool 
$zend_extensions
 =
false ] )

该函数返回了 PHP 解析器里所有编译并加载的模块名。


参数

zend_extensions

只返回 Zend 扩展,并非类似 mysqli 的普通扩展。默认是 
FALSE
 (返回普通扩展)。


返回值

返回所有模块名的一个索引数组(array)。

Array
(
[0] => Core
[1] => bcmath
[2] => calendar
[3] => ctype
[4] => date
[5] => ereg
[6] => filter
[7] => ftp
[8] => hash
[9] => iconv
[10] => json
[11] => mcrypt
[12] => SPL
[13] => odbc
[14] => pcre
[15] => Reflection
[16] => session
[17] => standard
[18] => mysqlnd
[19] => tokenizer
[20] => zip
[21] => zlib
[22] => libxml
[23] => dom
[24] => PDO
[25] => openssl
[26] => SimpleXML
[27] => wddx
[28] => xml
[29] => xmlreader
[30] => xmlwriter
[31] => apache2handler
[32] => curl
[33] => gd
[34] => mbstring
[35] => mysql
[36] => mysqli
[37] => Phar
[38] => pdo_mysql
[39] => pdo_sqlite
[40] => soap
[41] => SQLite
[42] => mhash
)


get_extension_funcs — 返回模块函数名称的数组


说明

array get_extension_funcs ( string 
$module_name
 )
该函数根据 
module_name
 返回模块内定义的所有函数的名称。


参数

module_name

模块名称。

Note:
这个参数必须是小写(lowercase)的。


返回值

返回包含所有函数名的数组,如果 
module_name
 不是一个有效的扩展则返回 
FALSE


extension_loaded — 检查一个扩展是否已经加载


说明

bool extension_loaded ( string 
$name
 )
检查一个扩展是否已经加载。


参数

name

扩展名称,大小写不敏感。


返回值

如果 
name
 指定的扩展已加载,返回
TRUE
,否则返回 
FALSE


示例:

$ext_info = array();
$loaded_extensions=get_loaded_extensions();//获取已加载的扩展
foreach($loaded_extensions as $ext)
{
$funs=get_extension_funcs($ext);//获取某一扩展下的所有函数
if(!empty($funs) && is_array($funs))
{
foreach($funs as $fun)
{
$reflect = new ReflectionFunction($fun);
$params = $reflect->getParameters();//获取函数参数信息
$param_str = '';
if(!empty($params) && is_array($params))
{
foreach($params as $param) {
if($param->getName() != '')
{
$param_str .= '$'.$param->getName().',';
}
}
$param_str = substr($param_str,0,-1);
}
$ext_info[$ext][] = $fun.'('.$param_str.')';
}
}
}
echo '<pre>';
print_r($ext_info);
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: