(PHP 7 >= 7.4.0, PHP 8)
Os objetos desta classe são criados pelos métodos de construção FFI::cdef(), FFI::load() ou FFI::scope(). Variáveis C definidas são disponibilizadas como propriedades da instância FFI e funções C definidas são disponibilizadas como métodos da instância FFI. Os tipos C declarados podem ser usados para criar novas estruturas de dados C usando FFI::new() e FFI::type().
A análise da definição FFI e o carregamento da biblioteca compartilhada podem levar um tempo significativo. Não é útil
fazer isso em cada solicitação HTTP em um ambiente Web. Entretanto, é possível pré-carregar definições e
bibliotecas FFI na inicialização do PHP e instanciar objetos FFI quando necessário. Os arquivos de cabeçalho
podem ser estendidos com definições especiais de FFI_SCOPE
(por exemplo, #define FFI_SCOPE "foo"
;
o escopo padrão é "C") e então carregados por FFI::load() durante o pré-carregamento.
Isto leva à criação de uma ligação persistente, que estará disponível para todas as solicitações
seguintes através de FFI::scope().
Consulte o exemplo completo de PHP/FFI/pré-carregamento
para obter detalhes.
É possível pré-carregar mais de um arquivo de cabeçalho C no mesmo escopo.