| size, zend_api,
         zend_debug and zts | Usually filled with the
         "STANDARD_MODULE_HEADER", which fills these
         four members with the size of the whole zend_module_entry, the
         ZEND_MODULE_API_NO, whether it is a debug
         build or normal build (ZEND_DEBUG) and if
         ZTS is enabled (USING_ZTS). | 
| name | Contains the module name (for example, "File
          functions", "Socket functions",
         "Crypt", etc.). This name will show up in
         phpinfo(), in the section "Additional
         Modules." | 
| functions | Points to the Zend function block, discussed in the preceding
         section. | 
| module_startup_func | This function is called once upon module initialization and can
         be used to do one-time initialization steps (such as initial
         memory allocation, etc.). To indicate a failure during
         initialization, return FAILURE; otherwise,
         SUCCESS. To mark this field as unused, use
         NULL. To declare a function, use the macro
         ZEND_MINIT. | 
| module_shutdown_func | This function is called once upon module shutdown and can be
         used to do one-time deinitialization steps (such as memory
         deallocation).  This is the counterpart to
         module_startup_func(). To indicate a failure
         during deinitialization, return FAILURE;
         otherwise, SUCCESS. To mark this field as
         unused, use NULL. To declare a function, use
         the macro ZEND_MSHUTDOWN. | 
| request_startup_func | This function is called once upon every page request and can be
         used to do one-time initialization steps that are required to
         process a request. To indicate a failure here, return
         FAILURE; otherwise,
         SUCCESS. Note: As
         dynamic loadable modules are loaded only on page requests, the
         request startup function is called right after the module
         startup function (both initialization events happen at the same
         time). To mark this field as unused, use
         NULL. To declare a function, use the macro
         ZEND_RINIT. | 
| request_shutdown_func | This function is called once after every page request and works
         as counterpart to request_startup_func(). To
         indicate a failure here, return FAILURE;
         otherwise, SUCCESS.
         Note: As dynamic loadable modules are
         loaded only on page requests, the request shutdown function is
         immediately followed by a call to the module shutdown handler
         (both deinitialization events happen at the same time). To mark
         this field as unused, use NULL. To declare a
         function, use the macro ZEND_RSHUTDOWN. | 
| info_func | When phpinfo() is called in a script, Zend
         cycles through all loaded modules and calls this function.
         Every module then has the chance to print its own "footprint"
         into the output page.  Generally this is used to dump
         environmental or statistical information. To mark this field as
         unused, use NULL. To declare a function, use
         the macro ZEND_MINFO. | 
| version | The version of the module. You can use
         NO_VERSION_YET if you don't want to give the
         module a version number yet, but we really recommend that you
         add a version string here. Such a version string can look like
         this (in chronological order): "2.5-dev",
         "2.5RC1", "2.5" or
         "2.5pl3". | 
| Remaining structure elements | These are used internally and can be prefilled by using the
         macro STANDARD_MODULE_PROPERTIES_EX. You
         should not assign any values to them. Use
         STANDARD_MODULE_PROPERTIES_EX only if you
         use global startup and shutdown functions; otherwise, use
         STANDARD_MODULE_PROPERTIES directly. |