FFI::load

(PHP 7 >= 7.4.0, PHP 8)

FFI::loadCarga las declaraciones C desde un archivo de encabezado C

Descripción

public static FFI::load(string $filename): ?FFI

Carga las declaraciones C desde un archivo de encabezado C. Es posible especificar las bibliotecas compartidas que deben ser cargadas, utilizando definiciones especiales FFI_LIB en el archivo de encabezado C cargado.

Parámetros

filename

El nombre de un archivo de encabezado C.

Las directivas del preprocesador C no son soportadas, es decir, #include, #define y las macros CPP no funcionan, excepto en los casos particulares enumerados a continuación.

El archivo de encabezado debería contener una declaración #define para la variable FFI_SCOPE, por ejemplo: #define FFI_SCOPE "MYLIB". Consulte la introducción de la clase para más detalles.

El archivo de encabezado puede contener una declaración #define para la variable FFI_LIB para especificar la biblioteca que expone. Si se trata de una biblioteca del sistema, solo se requiere el nombre del archivo, por ejemplo: #define FFI_LIB "libc.so.6". Si se trata de una biblioteca personalizada, se requiere una ruta relativa, por ejemplo: #define FFI_LIB "./mylib.so".

Valores devueltos

Devuelve el objeto FFI recién creado, o null en caso de fallo.

Historial de cambios

Versión Descripción
8.3.0 FFI::load() ahora está permitido en los scripts de precarga cuando el usuario del sistema actual es el mismo que el definido en la directiva de configuración opcache.preload_user.

Ver también

  • FFI::scope() - Instancia un objeto FFI con las declaraciones C analizadas durante la precarga