php8.5
Home/ Manual/ ffi / ffi/ FFI::cdef

FFI::cdef

PHP function Edit on GitHub ✎

(PHP 7 >= 7.4.0, PHP 8)

Creates a new FFI object

Description

FFI::cdef(string $code = "", string|null $lib = null): FFI

Creates a new FFI object.

Parameters

code

A string containing a sequence of declarations in regular C language (types, structures, functions, variables, etc). Actually, this string may be copy-pasted from C header files.

Note

C preprocessor directives are not supported, i.e. #include, #define and CPP macros do not work.

lib

The name of a shared library file, to be loaded and linked with the definitions.

Note

If lib is omitted or null, platforms supporting RTLD_DEFAULT attempt to lookup symbols declared in code in the normal global scope. Other systems will fail to resolve these symbols.

Return Values

Returns the freshly created FFI object.

Changelog

VersionDescription
8.3.0C functions returning void return a PHP null instead of FFI\CType::TYPE_VOID.
8.0.0lib is nullable now.

Source: reference/ffi/ffi/cdef.xml · from the official PHP manual (php/doc-en)