随着版本的升高,PHP的功能也越来越完善,可用的扩展库和函数也越来越多,因此,我们写程序时也要考虑版本的兼容问题,同时还要考虑服务器(特别是虚拟主机)是否安装了扩展库。
本文介绍的函数其实是PHP手册上本来就有的,但是由于这些函数独立性较强,查找不易,所以单独介绍一下,方便查阅。
该函数返回所有已经加载的(可用的)模块。
用法:
PHP:
该函数返回指定模块所有可用的函数。
传入的参数(模块名称)必须是小写
用法:
PHP:
该函数返回所有已经定义的函数,包括内置函数和用户自定义函数。
用法:
PHP:
输出:
Code:
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"] 是内置函数, $arr["user"] 是用户自定义函数。
该函数返回指定函数是否已经定义。
用法:
PHP:
本文介绍的函数其实是PHP手册上本来就有的,但是由于这些函数独立性较强,查找不易,所以单独介绍一下,方便查阅。
1. 获取所有可用的模块 - get_loaded_extensions
该函数返回所有已经加载的(可用的)模块。
用法:
PHP:
-
-
<?php
-
print_r
(
get_loaded_extensions
(
)
);
-
?>
-
2. 获取指定模块的可用函数 - get_extension_funcs
该函数返回指定模块所有可用的函数。
传入的参数(模块名称)必须是小写
用法:
PHP:
-
-
<?php
-
print_r
(
get_extension_funcs
(
"gd"
)
);
-
?>
-
3. 获取所有已经定义的函数 - get_defined_functions
该函数返回所有已经定义的函数,包括内置函数和用户自定义函数。
用法:
PHP:
-
-
<?php
-
function myrow
(
$id,
$data
)
-
{
-
return
"<tr><th>$id</th><td>$data</td></tr>/n";
-
}
-
-
$arr =
get_defined_functions
(
);
-
-
print_r
(
$arr
);
-
?>
-
输出:
Code:
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"] 是内置函数, $arr["user"] 是用户自定义函数。
4. 检查指定函数是否存在 - function_exists
该函数返回指定函数是否已经定义。
用法:
PHP:
-
-
<?php
-
if
(
function_exists
(
'imap_open'
)
)
{
-
echo
"IMAP functions are available.<br />/n";
-
}
else
{
-
echo
"IMAP functions are not available.<br />/n";
-
}
-
?>
-