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获取程序执行的时间
Jun 09 PHP
怎么在Windows系统中搭建php环境
Aug 31 PHP
教你如何使用php session
Oct 28 PHP
php使用str_replace实现输入框回车替换br的方法
Nov 24 PHP
php列出mysql表所有行和列的方法
Mar 13 PHP
PHP实现多维数组转字符串和多维数组转一维数组的方法
Aug 08 PHP
PHP使用pear实现mail发送功能 windows环境下配置pear
Apr 15 PHP
PHP简单检测网址是否能够正常打开的方法
Sep 04 PHP
php array_keys 返回数组的键名
Oct 25 PHP
PHP中有关长整数的一些操作教程
Sep 11 PHP
Laravel 微信小程序后端搭建步骤详解
Nov 26 PHP
yii2.0框架场景的简单使用示例
Jan 25 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
php上传图片存入数据库示例分享
2014/03/11 PHP
PHP打印输出函数汇总
2016/08/28 PHP
laravel入门知识点整理
2020/09/15 PHP
jQuery创建自己的插件(自定义插件)的方法
2010/06/10 Javascript
鼠标滑上去后图片放大浮出效果的js代码
2011/05/28 Javascript
jquery获取被勾选的checked(选中)的那一行的3列和4列的值
2013/07/04 Javascript
JS鼠标滑过图片时切换图片实现思路
2013/09/12 Javascript
JS 页面计时器示例代码
2013/10/28 Javascript
JS获取时间的相关函数及时间戳与时间日期之间的转换
2016/02/04 Javascript
AngularJS中使用HTML5手机摄像头拍照
2016/02/22 Javascript
JS+HTML5手机开发之滚动和惯性缓动实现方法分析
2016/06/12 Javascript
AngularJS 简单应用实例
2016/07/28 Javascript
angularjs过滤器--filter与ng-repeat配合有奇效
2017/04/20 Javascript
vue 2.0封装model组件的方法
2017/08/03 Javascript
详解微信小程序Page中data数据操作和函数调用
2017/09/27 Javascript
vue.js实现点击图标放大离开时缩小的代码
2021/01/27 Vue.js
[04:30]显微镜下的DOTA2第五期——拉比克
2013/09/26 DOTA
python八大排序算法速度实例对比
2017/12/06 Python
Python实现堡垒机模式下远程命令执行操作示例
2019/05/09 Python
django foreignkey(外键)的实现
2019/07/29 Python
django rest framework 实现用户登录认证详解
2019/07/29 Python
Python Request爬取seo.chinaz.com百度权重网站的查询结果过程解析
2019/08/13 Python
centos7之Python3.74安装教程
2019/08/15 Python
python创建n行m列数组示例
2019/12/02 Python
Python流程控制语句的深入讲解
2020/06/15 Python
Pandas的Apply函数具体使用
2020/07/21 Python
哈利波特商店:Harry Potter Shop
2018/11/30 全球购物
教师应聘个人求职信
2013/12/10 职场文书
给国外客户的邀请函
2014/01/30 职场文书
省委召开党的群众路线教育实践活动总结大会报告
2014/10/21 职场文书
出纳年终工作总结2014
2014/12/05 职场文书
推荐信范文大全
2015/03/27 职场文书
升职自荐信范文
2015/03/27 职场文书
大学毕业晚会开场白
2015/05/29 职场文书
早会开场白台词大全
2015/06/01 职场文书
男人帮观后感
2015/06/18 职场文书