2008年10月21日
自作PHP拡張モジュールの情報をphpinfo()に反映させる方法 |
午前中から東京で打ち合わせ。ランチ後解放。書泉グランデで鉄本購入。日比谷で降りてビック酒販へ。SPATEN オクトーバフェストビール目当てに来たが、残念ながらすでに売り切れの模様。何も買わず。
散歩がてら銀座を抜け東銀座駅より事務所へ。PHP拡張モジュールの実装。独自の拡張モジュールを入れてもphpinfo()関数では、Additional Modulesに羅列されるだけで、詳細な情報を出す術はないかと、ふと模索したところ、当然ながら、既存の拡張モジュールのソースに答えがあった。
fooという拡張モジュールがあったとする。
static PHP_MINFO_FUNCTION(foo);
zend_module_entry php_foo_module_entry = {
STANDARD_MODULE_HEADER,
"foo",
php_foo_functions,
NULL,
NULL,
NULL,
NULL,
PHP_MINFO(foo), //←NULLの代わりにこうする
NO_VERSION_YET,
STANDARD_MODULE_PROPERTIES
};
//phpinfo()での情報表示
PHP_MINFO_FUNCTION(foo)
{
php_info_print_table_start();
php_info_print_table_header(2, "foo support", "bar");
php_info_print_table_row(2, "version", "0.0.1");
php_info_print_table_row(2, "hoge", "enabled");
//などなど
php_info_print_table_end();
}
これでPHPリコンパイル。
php_info_print_table_row() のusageは、ググった限りでは、以下の仕様のようだ。
第1引数 列数
第2引数 第1列目の文字列
第3引数 第2列目の文字列
:
2007:
投稿者 onsenfan [ Linuxサーバ, PC・インターネット , プログラミング ] : 2008年10月21日 23:48
この記事が役に立った/おもしろいと思ったら、ワンクリックで応援お願いします
トラックバック
このエントリーのトラックバックURL:
http://blog.odorokutamegoro.com/cgi-bin/mt/mt-tb.cgi/2514_1191514222221