8053 beefd0184a 2022-08-08 ct_chen 2 lat temu
..
TSRM beefd0184a 2022-08-08 ct_chen 2 lat temu
Zend beefd0184a 2022-08-08 ct_chen 2 lat temu
appveyor beefd0184a 2022-08-08 ct_chen 2 lat temu
build beefd0184a 2022-08-08 ct_chen 2 lat temu
ext beefd0184a 2022-08-08 ct_chen 2 lat temu
main beefd0184a 2022-08-08 ct_chen 2 lat temu
pear beefd0184a 2022-08-08 ct_chen 2 lat temu
release beefd0184a 2022-08-08 ct_chen 2 lat temu
sapi beefd0184a 2022-08-08 ct_chen 2 lat temu
scripts beefd0184a 2022-08-08 ct_chen 2 lat temu
tests beefd0184a 2022-08-08 ct_chen 2 lat temu
travis beefd0184a 2022-08-08 ct_chen 2 lat temu
win32 beefd0184a 2022-08-08 ct_chen 2 lat temu
.appveyor.yml beefd0184a 2022-08-08 ct_chen 2 lat temu
.editorconfig beefd0184a 2022-08-08 ct_chen 2 lat temu
.gdbinit beefd0184a 2022-08-08 ct_chen 2 lat temu
.gitattributes beefd0184a 2022-08-08 ct_chen 2 lat temu
.gitignore beefd0184a 2022-08-08 ct_chen 2 lat temu
.travis.yml beefd0184a 2022-08-08 ct_chen 2 lat temu
CODING_STANDARDS beefd0184a 2022-08-08 ct_chen 2 lat temu
CONTRIBUTING.md beefd0184a 2022-08-08 ct_chen 2 lat temu
CREDITS beefd0184a 2022-08-08 ct_chen 2 lat temu
EXTENSIONS beefd0184a 2022-08-08 ct_chen 2 lat temu
INSTALL beefd0184a 2022-08-08 ct_chen 2 lat temu
LICENSE beefd0184a 2022-08-08 ct_chen 2 lat temu
Makefile.frag beefd0184a 2022-08-08 ct_chen 2 lat temu
Makefile.gcov beefd0184a 2022-08-08 ct_chen 2 lat temu
Makefile.global beefd0184a 2022-08-08 ct_chen 2 lat temu
NEWS beefd0184a 2022-08-08 ct_chen 2 lat temu
README.EXT_SKEL beefd0184a 2022-08-08 ct_chen 2 lat temu
README.GIT-RULES beefd0184a 2022-08-08 ct_chen 2 lat temu
README.MAILINGLIST_RULES beefd0184a 2022-08-08 ct_chen 2 lat temu
README.NEW-OUTPUT-API beefd0184a 2022-08-08 ct_chen 2 lat temu
README.PARAMETER_PARSING_API beefd0184a 2022-08-08 ct_chen 2 lat temu
README.REDIST.BINS beefd0184a 2022-08-08 ct_chen 2 lat temu
README.RELEASE_PROCESS beefd0184a 2022-08-08 ct_chen 2 lat temu
README.SELF-CONTAINED-EXTENSIONS beefd0184a 2022-08-08 ct_chen 2 lat temu
README.STREAMS beefd0184a 2022-08-08 ct_chen 2 lat temu
README.SUBMITTING_PATCH beefd0184a 2022-08-08 ct_chen 2 lat temu
README.TESTING beefd0184a 2022-08-08 ct_chen 2 lat temu
README.UNIX-BUILD-SYSTEM beefd0184a 2022-08-08 ct_chen 2 lat temu
README.WIN32-BUILD-SYSTEM beefd0184a 2022-08-08 ct_chen 2 lat temu
README.input_filter beefd0184a 2022-08-08 ct_chen 2 lat temu
README.md beefd0184a 2022-08-08 ct_chen 2 lat temu
UPGRADING beefd0184a 2022-08-08 ct_chen 2 lat temu
UPGRADING.INTERNALS beefd0184a 2022-08-08 ct_chen 2 lat temu
acinclude.m4 beefd0184a 2022-08-08 ct_chen 2 lat temu
buildconf beefd0184a 2022-08-08 ct_chen 2 lat temu
buildconf.bat beefd0184a 2022-08-08 ct_chen 2 lat temu
configure.ac beefd0184a 2022-08-08 ct_chen 2 lat temu
footer beefd0184a 2022-08-08 ct_chen 2 lat temu
genfiles beefd0184a 2022-08-08 ct_chen 2 lat temu
header beefd0184a 2022-08-08 ct_chen 2 lat temu
ltmain.sh beefd0184a 2022-08-08 ct_chen 2 lat temu
makedist beefd0184a 2022-08-08 ct_chen 2 lat temu
php.gif beefd0184a 2022-08-08 ct_chen 2 lat temu
php.ini-development beefd0184a 2022-08-08 ct_chen 2 lat temu
php.ini-production beefd0184a 2022-08-08 ct_chen 2 lat temu
php7.spec.in beefd0184a 2022-08-08 ct_chen 2 lat temu
run-tests.php beefd0184a 2022-08-08 ct_chen 2 lat temu
server-tests-config.php beefd0184a 2022-08-08 ct_chen 2 lat temu
server-tests.php beefd0184a 2022-08-08 ct_chen 2 lat temu
snapshot beefd0184a 2022-08-08 ct_chen 2 lat temu
vcsclean beefd0184a 2022-08-08 ct_chen 2 lat temu

README.EXT_SKEL

WHAT IT IS

It's a tool for automatically creating the basic framework for a PHP extension.

HOW TO USE IT

Very simple. First, change to the ext/ directory of the PHP sources. Then
run the following

php ext_skel.php --ext extension_name

and everything you need will be placed in directory ext/extension_name.

If you don't need to test the existence of any external header files,
libraries or functions in them, the extension is ready to be compiled in
PHP. To compile the extension, run the following:

./buildconf; ./configure --enable-extension_name; make

The definition of PHP_extension_NAME_VERSION will be present in the
php_extension_name.h and injected into the zend_extension_entry definition. This
is required by the PECL website for the version string conformity checks
against package.xml

SOURCE AND HEADER FILE NAME

The ext_skel.php script generates 'extension_name.c' and 'php_extension_name.h'
as the main source and header files. Keep these names.

extension functions (User functions) must be named

extension_name_function()

When you need to expose extension functions to other extensions, expose functions
strictly needed by others. Exposed internal function must be named

php_extension_name_function()

See also CODING_STANDARDS.

OTHER OPTIONS

Run php ext_skel.php --help to see the available options.