【C 言語】PHP の embed SAPI を使う

2024/05/04に公開

PHP の embed SAPI は C 言語のライブラリとして使える。PHP エクステンション開発のコードを書く練習に使える。

Debian の場合、libphp-embed パッケージを導入する。

sudo apt install libphp8.3-embed

README.md のコードをコンパイルして実行してみる

zig run test.c -lc -lphp $(php-config --includes)
Number of functions loaded: 1520
test.c
// https://github.com/php/php-src/blob/master/sapi/embed/README.md

#include <sapi/embed/php_embed.h>

int main(int argc, char **argv)
{
	PHP_EMBED_START_BLOCK(argc, argv)

	php_printf(
		"Number of functions loaded: %d\n",
		zend_hash_num_elements(EG(function_table))
	);

	PHP_EMBED_END_BLOCK()
}

Discussion