php-internal-docs 8.4.8
Unofficial docs for php/php-src
|
Go to the source code of this file.
Data Structures | |
struct | _zend_extension_persist_data |
Typedefs | |
typedef struct _zend_extension_persist_data | zend_extension_persist_data |
Variables | |
ZEND_API zend_llist | zend_extensions |
ZEND_API uint32_t | zend_extension_flags = 0 |
ZEND_API int | zend_op_array_extension_handles = 0 |
ZEND_API int | zend_internal_function_extension_handles = 0 |
typedef struct _zend_extension_persist_data zend_extension_persist_data |
Definition at line 253 of file zend_extensions.c.
void zend_extension_dtor | ( | zend_extension * | extension | ) |
Definition at line 229 of file zend_extensions.c.
ZEND_API size_t zend_extensions_op_array_persist | ( | zend_op_array * | op_array, |
void * | mem ) |
Definition at line 416 of file zend_extensions.c.
ZEND_API size_t zend_extensions_op_array_persist_calc | ( | zend_op_array * | op_array | ) |
Definition at line 402 of file zend_extensions.c.
ZEND_API zend_extension * zend_get_extension | ( | const char * | extension_name | ) |
Definition at line 364 of file zend_extensions.c.
ZEND_API int zend_get_internal_function_extension_handle | ( | const char * | module_name | ) |
Definition at line 306 of file zend_extensions.c.
ZEND_API int zend_get_internal_function_extension_handles | ( | const char * | module_name, |
int | handles ) |
Definition at line 313 of file zend_extensions.c.
ZEND_API int zend_get_op_array_extension_handle | ( | const char * | module_name | ) |
The handle returned by this function can be used with ZEND_OP_ARRAY_EXTENSION(op_array, handle)
.
The extension slot has been available since PHP 7.4 on user functions and has been available since PHP 8.2 on internal functions.
The extension slot made available by calling this function is initialized on the first call made to the function in that request. If you need to initialize it before this point, call zend_init_func_run_time_cache
.
The function cache slots are not available if the function is a trampoline, which can be checked with something like:
if (fbc->type == ZEND_USER_FUNCTION && !(fbc->op_array.fn_flags & ZEND_ACC_CALL_VIA_TRAMPOLINE) ) { // Use ZEND_OP_ARRAY_EXTENSION somehow }
Definition at line 290 of file zend_extensions.c.
ZEND_API int zend_get_op_array_extension_handles | ( | const char * | module_name, |
int | handles ) |
See zend_get_op_array_extension_handle for important usage information.
Definition at line 298 of file zend_extensions.c.
ZEND_API int zend_get_resource_handle | ( | const char * | module_name | ) |
Definition at line 259 of file zend_extensions.c.
Definition at line 325 of file zend_extensions.c.
Definition at line 321 of file zend_extensions.c.
zend_result zend_load_extension | ( | const char * | path | ) |
Definition at line 29 of file zend_extensions.c.
zend_result zend_load_extension_handle | ( | DL_HANDLE | handle, |
const char * | path ) |
Definition at line 63 of file zend_extensions.c.
void zend_register_extension | ( | zend_extension * | new_extension, |
DL_HANDLE | handle ) |
Definition at line 150 of file zend_extensions.c.
Definition at line 358 of file zend_extensions.c.
Definition at line 222 of file zend_extensions.c.
Definition at line 216 of file zend_extensions.c.
Definition at line 206 of file zend_extensions.c.
ZEND_API uint32_t zend_extension_flags = 0 |
Definition at line 24 of file zend_extensions.c.
ZEND_API zend_llist zend_extensions |
Definition at line 23 of file zend_extensions.c.
ZEND_API int zend_internal_function_extension_handles = 0 |
Definition at line 26 of file zend_extensions.c.
ZEND_API int zend_op_array_extension_handles = 0 |
Definition at line 25 of file zend_extensions.c.