Linux での php への C 言語拡張
まず、php 環境を構築します
php 5.2.6 ソース コードをダウンロードして解凍します
コンパイルしてインストールし、php 環境を構築します
次に、拡張機能プロジェクト
ソース コード ディレクトリに移動します
cd php5.2.6/ext/
./ext_skel --extname=my_ext
my_ext という名前のプロジェクトを作成します。 my_ext.so
3、設定とプログラムを変更します
$ vi ext/my_ext/config.m4
を変更しますdnl php_arg_with(my_ext、my_ext support、
dnlコメントが揃っていることを確認してください。 aligned:
[ --with-my_ext Include my_ext support])
または
dnl PHP_ARG_ENABLE(my_ext, my_ext サポートを有効にするかどうか,
dnl コメントがaligned:
dnl [ --enable-my_ext my_ext サポートを有効にする])
PHP_ARG_ENABLE(my_ext、my_ext サポートを有効にするかどうか、
コメントは整列しています:
[ --enable-my_ext my_ext サポートを有効にする])
$ vi ext/my_ext/php_my_ext.h
Change
PHP_FUNCTION(confirm_my_ext_compiled) / * テストのために、後で削除します。 */
PHP_FUNCTION(say_hello);
$ vi ext/my_ext/ my_ext.c
に変更します。 zend_function_entry php5cpp_functions[] = {
PHP_FE(confirm_my_ext_compiled, NULL) /* テスト用に後で削除します */
{NULL, NULL, NULL} /* php5cpp_functions[] の最後の行である必要があります */
};
zend_function_entry php5cpp_functions[] = {
PHP_FE(say_hello, NULL)
{NULL, NULL, NULL} / * php5cpp_functions[] の最後の行である必要があります */
};
最後に次を追加します:
PHP_FUNCTION(say_hello)
{
zend_printf("hello worldn");
}
4. Compile
$ cd my_ext
$ /usr/local/php/bin/phpize
ps: Cannot find autoconf ... というエラー メッセージが表示された場合は、autoconf をインストールする必要があります。 (インストール処理は省略します)
$ ./configure --with-php-config=/usr/local/php/bin/php-config
$ make My_ext/modules/my_ext .so はこの時点でコンパイルされます
5. php.ini を設定します
my_ext.so を
/usr/local/php/ext/directory
に置きます
$ vi php.ini
次のように変更して追加します。
extension_dir = '/usr/local/php /ext/'
extension=my_ext.so
6. テスト
$ vi test.php );?>
$ /usr/local/php/bin/php test.phphello world.
これで完了です
ps: ご質問がございましたら、メッセージを残してください。一緒に話し合うことができます。

ホットAIツール

Undresser.AI Undress
リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover
写真から衣服を削除するオンライン AI ツール。

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

AI Hentai Generator
AIヘンタイを無料で生成します。

人気の記事

ホットツール

SublimeText3 Linux 新バージョン
SublimeText3 Linux 最新バージョン

SublimeText3 Mac版
神レベルのコード編集ソフト(SublimeText3)

ZendStudio 13.5.1 Mac
強力な PHP 統合開発環境

SAP NetWeaver Server Adapter for Eclipse
Eclipse を SAP NetWeaver アプリケーション サーバーと統合します。

EditPlus 中国語クラック版
サイズが小さく、構文の強調表示、コード プロンプト機能はサポートされていません
