php扩展开发-MINFO
我们在用PHPinfo函数或命令行的php -i命令查看php环境相关的信息,当我们开发完成一个自己的扩展,除非这个扩展就是你自己所使用,否则你就需要对扩展进行相关的介绍,或者显示扩展用到的ini配置,这个时候你就可以使用MINFO的函数,把你想展示的信息通过它来等记,最后在phpinfo或php-i中别人可以看到这些信息。
PHP_MINFO_FUNCTION(myext);//php_myext.h //你想展示的扩展信息
PHP_MINFO_FUNCTION(myext){
//这里面的内容其实就printf输出,只是php内核提供了一些封装好的函数,方便我们输出
php_info_print_table_start();
php_info_print_table_row(, "version", PHP_MYEXT_VERSION);
php_info_print_table_row(, "writer", "zhangxiaomin");
php_info_print_table_end();
} zend_module_entry myext_module_entry = {
#if ZEND_MODULE_API_NO >= 20010901
STANDARD_MODULE_HEADER,
#endif
"myext",//扩展名称
myext_functions,//zend_function_entry myext_functions 定义好的函数扩展变量
PHP_MINIT(myext),//MINIT_FUNCTION
NULL,//MSHUTDOWN_FUNCTION
NULL,//RINIT_FUNCTION
NULL,//RSHUTDOWN_FUNCTION
PHP_MINFO(myext),//MINFO_FUNCTION,在这里注册PHP_MINFO_FUNCTION
#if ZEND_MODULE_API_NO >= 20010901
PHP_MYEXT_VERSION,
#endif
STANDARD_MODULE_PROPERTIES
};
//ext/standard/info.h
//这些函数已经对cli或HTML的环境做了处理,会分别显示对应的文本内容 PHPAPI char *php_info_html_esc(char *string TSRMLS_DC);
PHPAPI void php_info_html_esc_write(char *string, int str_len TSRMLS_DC);
PHPAPI void php_print_info_htmlhead(TSRMLS_D);
PHPAPI void php_print_info(int flag TSRMLS_DC);
PHPAPI void php_print_style(void);
PHPAPI void php_info_print_style(TSRMLS_D);
PHPAPI void php_info_print_table_colspan_header(int num_cols, char *header);
PHPAPI void php_info_print_table_header(int num_cols, ...);
PHPAPI void php_info_print_table_row(int num_cols, ...);
PHPAPI void php_info_print_table_row_ex(int num_cols, const char *, ...);
PHPAPI void php_info_print_table_start(void);
PHPAPI void php_info_print_table_end(void);
PHPAPI void php_info_print_box_start(int bg);
PHPAPI void php_info_print_box_end(void);
PHPAPI void php_info_print_hr(void);
PHPAPI void php_info_print_module(zend_module_entry *module TSRMLS_DC);
php扩展开发-MINFO的更多相关文章
- 【原创】PHP扩展开发入门
PHP扩展开发入门 作者:wf (360电商技术组) 在我们编写自己的第一个php扩展之前,先了解一下php的总体架构和执行机制. php的架构如图1所看到的. 当中一个重要的就是SAPI(serve ...
- iOS开发系列--App扩展开发
概述 从iOS 8 开始Apple引入了扩展(Extension)用于增强系统应用服务和应用之间的交互.它的出现让自定义键盘.系统分享集成等这些依靠系统服务的开发变成了可能.WWDC 2016上众多更 ...
- PHP 扩展开发(将自己的一些代码封装成PHP扩展函数)
今天时间不多,先给个地址,能搜到我这篇blog的朋友先看看我最近在看的一些文章.资料吧: 我的环境是 lnmp1.1 的 (LNMP一键安装包),所以要进行PHP扩展开发首先应该对环境配置和shell ...
- 关于PHP扩展开发(收藏)
一.Linux shell命令: ls –lh 查看文件大小 du –a 查看文件及文件夹大小 -------------------------- nginx ------------- ...
- postgres扩展开发
扩展开发的基本组成 demo--1.0.sql demo.c demo.control Makefile demo.c当中包含了自定义函数的实现,纯C语言,目录下可包含多个.c文件.demo-1.0. ...
- 【转发】NPAPI学习(Firefox和Chrome扩展开发 )
NPAPI学习(Firefox和Chrome扩展开发 ) 2011-11-08 14:41:02 by [6yang], 1172 visits, 收藏 | 返回 Firefox和Chrome扩展开发 ...
- Chrome扩展开发之二——Chrome扩展中脚本的运行机制和通信方式
目录: 0.Chrome扩展开发(Gmail附件管理助手)系列之〇——概述 1.Chrome扩展开发之一——Chrome扩展的文件结构 2.Chrome扩展开发之二——Chrome扩展中脚本的运行机制 ...
- PHP扩展开发相关总结
1.线程安全宏定义 在TSRM/TSRM.h文件中有如下定义 #define TSRMLS_FETCH() void ***tsrm_ls = (void ***) ts_resource_ex(0, ...
- Firefox扩展开发
Firefox扩展开发 (插件开发) Extension开发 入门教程 5步走 五步走 首先需要知道什么是"Firefox插件".这里说的"插件"只是一个通 ...
随机推荐
- iOS-swift-函数和闭包
一.函数 关键字:func 参数列表用 , 分割 使用 -> 分割参数和返回值 func greet(person: String, day: String) -> String { re ...
- mysql中count(*)和found_rows()的区别
count(*)和found_rows()都可以用来求查询记录的数量 而count(*)往往单独使用,found_rows()却可以跟上前面一个查询,即select * from table limi ...
- ArcGisJS的layers-add-result事件总结
map.on("layers-add-result", initEditing);当地图控件中的所有图层加载完毕之后触发. 注意图层加载完成后返回的的结果:event. funct ...
- python模块详解 YAML和configparser
YAML模块 主要用来做配置文件用的. yaml格式: 详细参考官方文档:PyYAML configparser模块 同样是用于生成和修改配置文件用的.格式和mysql一样. 生成配置文件 impor ...
- 然之协同系统3.5(OA+CRM+CASH+TEAM)
平台: Ubuntu 类型: 虚拟机镜像 软件包: mariadb-server 10.0.25 nginx 1.10.0 php7.0.4 collaboration commercial crm ...
- python-rrdtool
https://nagios-plugins.org/doc/guidelines.html nagios检测信息 host GPING OK – rtt min/avg/max/mdev = 0.8 ...
- bootstrap-table 数据表格行内修改
bootstrap-table 数据行内修改js中设置列的属性 editable : { type : 'text',//数据显示在文本框内 emptytext : "--",// ...
- Python元组、列表、字典、集合
1. 元组 元组由不同元素组成,每个元素可以存储不同类型的数据,元组是有序的,元组创建后不能再做任何修改. 元组的创建: tuple = ('a','b','c','d') 如果创建的元组只有1个元素 ...
- 二维码生成的WEB api方法
/// <summary> /// 获取二维码 /// </summary> /// <param name="size">编码测量度,值越大生 ...
- Cocos2d-x手机游戏开发必备C++语言基础
http://edu.51cto.com/course/course_id-1380-page-1.html