FFI::load

Loads C declarations from a C header file

説明

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

Loads C declarations from a C header file. It is possible to specify shared libraries that should be loaded, using special FFI_LIB defines in the loaded C header file.

パラメータ

filename

The name of a C header file.

C preprocessor directives are not supported, i.e. #include, #define and CPP macros do not work, except for special cases listed below.

The header file should contain a #define statement for the FFI_SCOPE variable, e.g.: #define FFI_SCOPE "MYLIB". Refer to the class introduction for details.

The header file may contain a #define statement for the FFI_LIB variable to specify the library it exposes. If it is a system library only the file name is required, e.g.: #define FFI_LIB "libc.so.6". If it is a custom library, a relative path is required, e.g.: #define FFI_LIB "./mylib.so".

戻り値

Returns the freshly created FFI object, or null on failure.

変更履歴

バージョン 説明
8.3.0 FFI::load is now allowed in preload scripts when the current system user is the same as the one defined in the opcache.preload_user configuration directive.

参考

  • FFI::scope