PHP 检查扩展库或函数是否可用的代码


Posted in PHP onApril 06, 2010

本文介绍的函数其实是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 "<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"] 是内置函数, $arr["user"] 是用户自定义函数。
4. 检查指定函数是否存在 - function_exists 该函数返回指定函数是否已经定义。
用法:
if (function_exists('imap_open')) { 
echo "IMAP functions are available.<br />\n"; 
} else { 
echo "IMAP functions are not available.<br />\n"; 
}
PHP 相关文章推荐
用PHP中的 == 运算符进行字符串比较
Nov 26 PHP
PHP 超链接 抓取实现代码
Jun 29 PHP
php array_unique之后json_encode需要注意
Jan 02 PHP
PHP中strtotime函数使用方法分享
Jan 10 PHP
php实现图片转换成ASCII码的方法
Apr 03 PHP
PHP实现生成唯一会员卡号
Aug 24 PHP
为你总结一些php信息函数
Oct 21 PHP
windows8.1下Apache+Php+MySQL配置步骤
Oct 30 PHP
PHP爬虫之百万级别知乎用户数据爬取与分析
Jan 22 PHP
php打乱数组二维数组多维数组的简单实例
Jun 17 PHP
thinkphp实现把数据库中的列的值存到下拉框中的方法
Jan 20 PHP
JS操作XML中DTD介绍及使用方法分析
Jul 04 PHP
php下关于中英数字混排的字符串分割问题
Apr 06 #PHP
Blitz templates 最快的PHP模板引擎
Apr 06 #PHP
PHP数组内存耗用太多问题的解决方法
Apr 05 #PHP
phpMyadmin 用户权限中英对照
Apr 02 #PHP
使用PHPMYADMIN操作mysql数据库添加新用户和数据库的方法
Apr 02 #PHP
ExtJS与PHP、MySQL实现存储的方法
Apr 02 #PHP
php截取utf-8中文字符串乱码的解决方法
Mar 29 #PHP
You might like
屏蔽浏览器缓存另类方法
2006/10/09 PHP
简单介绍PHP的责任链编程模式
2015/08/11 PHP
php+MySql实现登录系统与输出浏览者信息功能
2016/07/01 PHP
PHP之将POST数据转化为字符串的实现代码
2016/11/03 PHP
jQuery 技巧小结
2010/04/02 Javascript
IE6中使用position导致页面变形的解决方案(js代码)
2011/01/09 Javascript
js URL参数的拼接方法比较
2012/02/15 Javascript
js获取当前时间(昨天、今天、明天)
2016/11/23 Javascript
JS解决移动web开发手机输入框弹出的问题
2017/03/31 Javascript
详解前后端分离之VueJS前端
2017/05/24 Javascript
vue.js或js实现中文A-Z排序的方法
2018/03/08 Javascript
NodeJs 实现简单WebSocket即时通讯的示例代码
2019/08/05 NodeJs
解决VUE项目localhost端口服务器拒绝连接,只能用127.0.0.1的问题
2020/08/14 Javascript
[58:23]LGD vs TNC 2019国际邀请赛小组赛 BO2 第一场 8.15
2019/08/16 DOTA
Python的Bottle框架的一些使用技巧介绍
2015/04/08 Python
python基于BeautifulSoup实现抓取网页指定内容的方法
2015/07/09 Python
python中使用psutil查看内存占用的情况
2018/06/11 Python
python中csv文件的若干读写方法小结
2018/07/04 Python
python远程邮件控制电脑升级版
2019/05/23 Python
python实现windows倒计时锁屏功能
2019/07/30 Python
Python实现元素等待代码实例
2019/11/11 Python
什么是python的列表推导式
2020/05/26 Python
python中判断数字是否为质数的实例讲解
2020/12/06 Python
用CSS3实现Win8风格的方格导航菜单效果
2013/04/10 HTML / CSS
美国医生配方营养补充剂供应商:Healthy Directions
2019/07/10 全球购物
你们项目是如何进行变更控制的
2015/08/26 面试题
学前教育专业毕业生自荐信
2013/10/03 职场文书
求职简历自荐信
2013/10/20 职场文书
母亲追悼会答谢词
2014/01/27 职场文书
药品促销活动方案
2014/02/14 职场文书
霸气队列口号
2014/06/18 职场文书
企业读书活动总结
2014/06/30 职场文书
中层干部考核评语
2015/01/04 职场文书
2015年化工厂工作总结
2015/05/04 职场文书
工作一年自我鉴定
2019/06/20 职场文书
处世之道:关于真诚相待的名言推荐
2019/12/02 职场文书