Main interface to C code and data FFI
&reftitle.intro; Objects of this class are created by the factory methods FFI::cdef, FFI::load or FFI::scope. Defined C variables are made available as properties of the FFI instance, and defined C functions are made available as methods of the FFI instance. Declared C types can be used to create new C data structures using FFI::new and FFI::type. FFI definition parsing and shared library loading may take significant time. It is not useful to do it on each HTTP request in a Web environment. However, it is possible to preload FFI definitions and libraries at PHP startup, and to instantiate FFI objects when necessary. Header files may be extended with special FFI_SCOPE defines (e.g. #define FFI_SCOPE "foo"”"; the default scope is "C") and then loaded by FFI::load during preloading. This leads to the creation of a persistent binding, that will be available to all the following requests through FFI::scope. Refer to the complete PHP/FFI/preloading example for details. It is possible to preload more than one C header file into the same scope.
&reftitle.classsynopsis; FFI final FFI &Methods;
&reference.ffi.entities.ffi;