php.ini の設定により動作が変化します。
| 名前 | デフォルト | 変更可能 | 変更履歴 |
|---|---|---|---|
| ffi.enable | "preload" | INI_SYSTEM |
|
| ffi.preload | "" | INI_SYSTEM |
以下に設定ディレクティブに関する 簡単な説明を示します。
ffi.enable
string
FFI API の使用を有効化する ("true") か
無効化する ("false") か、
CLI SAPI と事前ロードファイルでだけ使えるよう制限する ("preload") かを
指定します。
FFI API の利用制限は、FFI クラスにのみ影響し、 FFI\CData オブジェクトのオーバーロードされた関数には影響しません。 つまり、事前ロードファイルで FFI\CData オブジェクトを作成し、 それを PHP スクリプトで直接使うことは可能だということです。
ffi.preload
string
FFI バインディングを起動時に事前ロードできるようにします。
opcache.preload_user が設定されている場合、
FFI の事前ロードを FFI::load() で実現することはできません。
このディレクティブは DIRECTORY_SEPARATOR で区切られたファイル名のリストを受け付けます。
事前ロードされたバインディングは FFI::scope() を呼ぶことでアクセスできます。