<?php
include_once $_SERVER['DOCUMENT_ROOT'] . '/include/shared-manual.inc';
$TOC = array();
$TOC_DEPRECATED = array();
$PARENTS = array();
include_once dirname(__FILE__) ."/toc/ffi.setup.inc";
$setup = array (
  'home' => 
  array (
    0 => 'index.php',
    1 => 'PHP Manual',
  ),
  'head' => 
  array (
    0 => 'UTF-8',
    1 => 'ja',
  ),
  'this' => 
  array (
    0 => 'ffi.configuration.php',
    1 => '実行時設定',
    2 => '実行時設定',
  ),
  'up' => 
  array (
    0 => 'ffi.setup.php',
    1 => 'インストール/設定',
  ),
  'prev' => 
  array (
    0 => 'ffi.installation.php',
    1 => 'インストール手順',
  ),
  'next' => 
  array (
    0 => 'ffi.examples.php',
    1 => '例',
  ),
  'alternatives' => 
  array (
  ),
  'source' => 
  array (
    'lang' => 'ja',
    'path' => 'reference/ffi/setup.xml',
  ),
  'history' => 
  array (
  ),
);
$setup["toc"] = $TOC;
$setup["toc_deprecated"] = $TOC_DEPRECATED;
$setup["parents"] = $PARENTS;
manual_setup($setup);

contributors($setup);

?>
<div id="ffi.configuration" class="section">
  <h2 class="title">実行時設定</h2>
  <p class="simpara">
<var class="filename">php.ini</var> の設定により動作が変化します。
</p>
  <p class="para">
   <table class="doctable table">
    <caption><strong>FFI 設定オプション</strong></caption>
    
     <thead>
      <tr>
       <th>名前</th>
       <th>デフォルト</th>
       <th>変更可能</th>
       <th>変更履歴</th>
      </tr>

     </thead>

     <tbody class="tbody">
      <tr>
       <td><a href="ffi.configuration.php#ini.ffi.enable" class="link">ffi.enable</a></td>
       <td>&quot;preload&quot;</td>
       <td><strong><code><a href="info.constants.php#constant.ini-system">INI_SYSTEM</a></code></strong></td>
       <td class="empty">&nbsp;</td>
      </tr>

      <tr>
       <td><a href="ffi.configuration.php#ini.ffi.preload" class="link">ffi.preload</a></td>
       <td>&quot;&quot;</td>
       <td><strong><code><a href="info.constants.php#constant.ini-system">INI_SYSTEM</a></code></strong></td>
       <td class="empty">&nbsp;</td>
      </tr>

     </tbody>
    
   </table>

   INI_* モードの詳細および定義については
<a href="configuration.changes.modes.php" class="xref">どこで設定を行うのか</a> を参照してください。
  </p>

  <p class="para">以下に設定ディレクティブに関する
簡単な説明を示します。</p>

  <dl>
   
    <dt id="ini.ffi.enable">
     <code class="parameter">ffi.enable</code>
     <span class="type"><a href="language.types.string.php" class="type string">string</a></span>
    </dt>
    <dd>
     <span class="simpara">
      FFI API の使用を有効化する (<code class="literal">&quot;true&quot;</code>) か
      無効化する (<code class="literal">&quot;false&quot;</code>) か、
      CLI SAPI と事前ロードファイルでだけ使えるよう制限する (<code class="literal">&quot;preload&quot;</code>) かを
      指定します。
     </span>
     <span class="simpara">
      FFI API の利用制限は、<span class="classname"><a href="class.ffi.php" class="classname">FFI</a></span> クラスにのみ影響し、
      <span class="classname"><a href="class.ffi-cdata.php" class="classname">FFI\CData</a></span> オブジェクトのオーバーロードされた関数には影響しません。
      つまり、事前ロードファイルで <span class="classname"><a href="class.ffi-cdata.php" class="classname">FFI\CData</a></span> オブジェクトを作成し、
      それを PHP スクリプトで直接使うことは可能だということです。
     </span>
    </dd>
   
   
    <dt id="ini.ffi.preload">
     <code class="parameter">ffi.preload</code>
     <span class="type"><a href="language.types.string.php" class="type string">string</a></span>
    </dt>
    <dd>
     <span class="simpara">
      FFI バインディングを起動時に事前ロードできるようにします。
      <a href="opcache.configuration.php#ini.opcache.preload-user" class="link">opcache.preload_user</a> が設定されている場合、
      FFI の事前ロードを <span class="methodname"><a href="ffi.load.php" class="methodname">FFI::load()</a></span> で実現することはできません。
      このディレクティブは <strong><code><a href="dir.constants.php#constant.directory-separator">DIRECTORY_SEPARATOR</a></code></strong> で区切られたファイル名のリストを受け付けます。
      事前ロードされたバインディングは <span class="methodname"><a href="ffi.scope.php" class="methodname">FFI::scope()</a></span> を呼ぶことでアクセスできます。
     </span>
    </dd>
   
  </dl>
 </div><?php manual_footer($setup); ?>