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