# php_manual

id: ps_setpolydash
type: function
doc:
<comment>Description:</comment>
  破線の形状を設定する
  
  破線の「線」の部分と「空白」の部分の長さを設定します。 <strong>ps_setpolydash()</strong> は、 より複雑な破線パター
  ンを設定するために用いられます。

<comment>Param:</comment>
  <info>resource</info>  <strong>$psdoc</strong>  <strong>ps_new()</strong> が返す、postscript ファイルのリソース ID。
  <info>float</info>     <strong>$arr</strong>    <strong>$arr</strong> は「線」の部分の長さと 「空白」の部分の長さを互い違いにならべたリストです。

<comment>Return:</comment>
  <info>bool</info>  成功した場合に <info>true</info> を、失敗した場合に <info>false</info> を返します。

<comment>See Also:</comment>
   * <strong>ps_setdash()</strong>


id: ps_shading
type: function
doc:
<comment>Description:</comment>
  以降の出力で用いるシェーディングを作成する
  
  シェーディングを作成します。これは <strong>ps_shfill()</strong> や <strong>ps_shading_pattern()</strong> で用いられます。
  
  シェーディングの色には、<return>pattern</return> 以外の任意の色空間が利用できます。

<comment>Param:</comment>
  <info>resource</info>  <strong>$psdoc</strong>           <strong>ps_new()</strong> が返す、postscript ファイルのリソース ID。
  <info>string</info>    <strong>$type</strong>            シェーディングの種類で、<return>radial</return> (放射状) または <return>axial</return> (直線状) のいずれ
                             かです。 シェーディングは現在の塗りつぶし色で始まり、 <strong>$c1</strong> から <strong>$c4</strong> まで
                             のパラメータで指定される色で終わります (パラメータの意味は
                             <strong>ps_setcolor()</strong> を参照ください)。
  <info></info>          <strong>$x0, x1, y0, y1</strong>  <strong>$x0</strong>, <strong>$y0</strong>, <strong>$x1</strong>, <strong>$y1</strong> は、 シェーディングの開始位置・終了位置の座標です。
                             シェーディングの形式が <return>radial</return> の場合は、 それぞれ開始円・終了円の中心と
                             なります。
  <info></info>          <strong>$c1, c2, c3, c4</strong>  このパラメータの意味は <strong>ps_setcolor()</strong> を参照ください。
  <info>string</info>    <strong>$optlist</strong>         type が <return>radial</return> の場合、<strong>$optlist</strong> にはパラメータ <return>r0</return> と <return>r1</return> が含まれる必要
                             があります。これらはそれぞれ開始位置と終了位置を表す 円の半径です。

<comment>Return:</comment>
  <info>int|false</info>  成功した場合にパターンの ID を、失敗した場合に <info>false</info> を返します。

<comment>See Also:</comment>
   * <strong>ps_shading_pattern()</strong>
   * <strong>ps_shfill()</strong>


id: ps_shading_pattern
type: function
doc:
<comment>Description:</comment>
  シェーディング用のパターンを作成する
  
  シェーディング用のパターンを作成します。これは <strong>ps_shading()</strong> を呼ぶ前に行わなければなりません。
  シェーディングパターンは、標準のパターンと同じように用いられます。

<comment>Param:</comment>
  <info>resource</info>  <strong>$psdoc</strong>      <strong>ps_new()</strong> が返す、postscript ファイルのリソース ID。
  <info>int</info>       <strong>$shadingid</strong>  事前に <strong>ps_shading()</strong> で作成したシェーディングの ID。
  <info>string</info>    <strong>$optlist</strong>    このパラメータは、現在使用されていません。

<comment>Return:</comment>
  <info>int|false</info>  成功した場合にパターンの ID を、失敗した場合に <info>false</info> を返します。

<comment>See Also:</comment>
   * <strong>ps_shading()</strong>
   * <strong>ps_shfill()</strong>


id: ps_shfill
type: function
doc:
<comment>Description:</comment>
  範囲をシェーディングで塗りつぶす
  
  範囲をシェーディングで塗りつぶします。シェーディングは事前に <strong>ps_shading()</strong> で作られている必要があり
  ます。 この関数は、<strong>ps_shading_pattern()</strong> でシェーディングからパターンを作成し、 それを塗りつぶし色
  として使用するのと同じことを行います。

<comment>Param:</comment>
  <info>resource</info>  <strong>$psdoc</strong>      <strong>ps_new()</strong> が返す、postscript ファイルのリソース ID。
  <info>int</info>       <strong>$shadingid</strong>  事前に <strong>ps_shading()</strong> で作成したシェーディングの ID。

<comment>Return:</comment>
  <info>bool</info>  成功した場合に <info>true</info> を、失敗した場合に <info>false</info> を返します。

<comment>See Also:</comment>
   * <strong>ps_shading()</strong>
   * <strong>ps_shading_pattern()</strong>


id: ps_show
type: function
doc:
<comment>Description:</comment>
  テキストを出力する
  
  現在の位置にテキストを出力します。テキストの位置を設定するには、 関数 <strong>ps_set_value()</strong> の値 <return>textx</return> お
  よび <return>texty</return> に x 座標と y 座標を設定します。 事前に <strong>ps_setfont()</strong> でフォントが設定されていない場合、
  この関数はエラーを返します。
  
  <strong>ps_show()</strong> は、以下のようなパラメータや値 (それぞれ <strong>ps_set_parameter()</strong> や <strong>ps_set_value()</strong> で設定され
  たもの) の内容を評価します。
  
  連続する 2 つのグリフ間の距離です。値がゼロ以外の場合、リゲチャは 解消されます。ゼロ未満の値を指定
  することも可能です。
  
  このパラメータを "false" に設定するとカーニングが無効になります。 デフォルトではカーニングが有効に
  なっています。
  
  このパラメータを "false" に設定するとリゲチャを使用しないようになります。 デフォルトではリゲチャを
  使用するようになっています。
  
  このパラメータを "true" に設定すると下線が引かれます。 デフォルトでは下線が無効になっています。
  
  このパラメータを "true" に設定すると上線が引かれます。 デフォルトでは上線が無効になっています。
  
  このパラメータを "true" に設定すると打ち消し線が引かれます。 デフォルトでは打ち消し線が無効になっ
  ています。

<comment>Param:</comment>
  <info>resource</info>  <strong>$psdoc</strong>  <strong>ps_new()</strong> が返す、postscript ファイルのリソース ID。
  <info>string</info>    <strong>$text</strong>   出力するテキスト。

<comment>Return:</comment>
  <info>bool</info>  成功した場合に <info>true</info> を、失敗した場合に <info>false</info> を返します。

<comment>See Also:</comment>
   * <strong>ps_continue_text()</strong>
   * <strong>ps_show_xy()</strong>
   * <strong>ps_setfont()</strong>


id: ps_show2
type: function
doc:
<comment>Description:</comment>
  テキストを現在の位置に出力する
  
  テキストを現在の位置に出力します。最大 <strong>$len</strong> 文字までしか出力しません。

<comment>Param:</comment>
  <info>resource</info>  <strong>$psdoc</strong>  <strong>ps_new()</strong> が返す postscript ファイルの ID リソース。
  <info>string</info>    <strong>$text</strong>   出力するテキスト。
  <info>int</info>       <strong>$len</strong>    表示する最大文字数。

<comment>Return:</comment>
  <info>bool</info>  成功した場合に <info>true</info> を、失敗した場合に <info>false</info> を返します。


id: ps_show_boxed
type: function
doc:
<comment>Description:</comment>
  テキストをボックス内に出力する
  
  与えられたボックスの中にテキストを出力します。ボックスの左下の座標が (<strong>$left</strong>, <strong>$bottom</strong>) となります。
  必要に応じて改行が挿入されます。連続する空白文字は、ひとつとして扱われ、 タブ文字は空白文字として
  扱われます。
  
  パラメータ <strong>$hyphenation</strong> が <info>true</info> に設定されており、またパラメータ <strong>$hyphendict</strong> に有効なハイフネー
  ションファイルが設定されている場合に、 テキストのハイフネーションが行われます。 行間隔の設定は、値
  <return>leading</return> で行います。 TeX と同様に、段落と段落の間には空行が挿入されます。 値 <return>parindent</return> が 0.0 より
  大きく設定されている場合、 最初の n 行は字下げされます。n の行数は、値 <return>numindentlines</return> で設定しま
  す。 最初の m 段落を字下げしないようにするには、 値 <return>parindentskip</return> に正の数値を設定します。

<comment>Param:</comment>
  <info>resource</info>  <strong>$psdoc</strong>       <strong>ps_new()</strong> が返す、postscript ファイルのリソース ID。
  <info>string</info>    <strong>$text</strong>        指定したボックスの中に出力するテキスト。
  <info>float</info>     <strong>$left</strong>        ボックスの左下角の x 座標。
  <info>float</info>     <strong>$bottom</strong>      ボックスの左下角の y 座標。
  <info>float</info>     <strong>$width</strong>       ボックスの幅。
  <info>float</info>     <strong>$height</strong>      ボックスの高さ。
  <info>string</info>    <strong>$hmode</strong>       パラメータ <strong>$hmode</strong> は <return>justify</return>（均等割付）・ <return>fulljustify</return>（完全な均等割付）・
                         <return>right</return>（右寄せ）・ <return>left</return>（左寄せ）・ <return>center</return>（センタリング）のどれかの値を設定
                         します。 <return>justify</return> と <return>fulljustify</return> の違いは、ボックスの最終行の処理です。
                         <return>fulljustify</return> モードでは、 段落の最後の行である場合を除いて最終行も均等割付を
                         します。 <return>justify</return> モードでは、最終行は常に左寄せとなります。
  <info>string</info>    <strong>$feature</strong>     
  <info></info>          <strong>$hyphendict</strong>  ハイフネーションを有効にする場合は <info>true</info> に設定します。 その際、<strong>$hyphendict</strong>
                         に辞書を設定しておく必要があります。 デフォルトは <info>false</info> です。

<comment>Return:</comment>
  <info>int</info>  書くことができなかった文字数を返します。

<comment>See Also:</comment>
   * <strong>ps_continue_text()</strong>


id: ps_show_xy
type: function
doc:
<comment>Description:</comment>
  指定された位置にテキストを出力する
  
  指定された位置にテキストを出力します。

<comment>Param:</comment>
  <info>resource</info>  <strong>$psdoc</strong>  <strong>ps_new()</strong> が返す、postscript ファイルのリソース ID。
  <info>string</info>    <strong>$text</strong>   出力するテキスト。
  <info>float</info>     <strong>$x</strong>      テキストを囲むボックスの左下角の x 座標。
  <info>float</info>     <strong>$y</strong>      テキストを囲むボックスの左下角の y 座標。

<comment>Return:</comment>
  <info>bool</info>  成功した場合に <info>true</info> を、失敗した場合に <info>false</info> を返します。

<comment>See Also:</comment>
   * <strong>ps_continue_text()</strong>
   * <strong>ps_show()</strong>


id: ps_show_xy2
type: function
doc:
<comment>Description:</comment>
  テキストを指定した位置に出力する
  
  この関数は、
  現在のところ詳細な情報はありません。引数のリストのみが
  記述されています。
  
  この関数は、
  現在のところ詳細な情報はありません。引数のリストのみが
  記述されています。

<comment>Return:</comment>
  <info>bool</info>  成功した場合に <info>true</info> を、失敗した場合に <info>false</info> を返します。


id: ps_string_geometry
type: function
doc:
<comment>Description:</comment>
  文字列のジオメトリを取得する
  
  この関数は <strong>ps_stringwidth()</strong> と似ていますが、 戻り値は、テキストの幅、ascender および descender を
  含む配列形式になります。

<comment>Param:</comment>
  <info>resource</info>  <strong>$psdoc</strong>   <strong>ps_new()</strong> が返す、postscript ファイルのリソース ID。
  <info>string</info>    <strong>$text</strong>    ジオメトリを計算するテキスト。
  <info>int</info>       <strong>$fontid</strong>  使用するフォントの ID。フォントが指定されていない場合は、 現在のフォントが使用
                     されます。
  <info>float</info>     <strong>$size</strong>    フォントのサイズ。指定されていない場合は現在のサイズが使用されます。

<comment>Return:</comment>
  <info>array</info>  文字の寸法を格納した配列です。'width' には <strong>ps_stringwidth()</strong> で返される文字列の幅が入りま
         す。 下に突き出している部分の長さの最大値が 'descender' に、 また上に突き出している部分の長
         さの最大値が 'ascender' に入ります。

<comment>See Also:</comment>
   * <strong>ps_continue_text()</strong>
   * <strong>ps_stringwidth()</strong>


id: ps_stringwidth
type: function
doc:
<comment>Description:</comment>
  文字列の幅を取得する
  
  指定されたフォントとサイズで出力した場合に、 文字列の幅が何ポイントになるかを計算します。 正確な幅
  を計算するため、この関数には Adobe のフォントメトリックファイルが必要です。カーニングが有効になっ
  ている場合、 それも考慮して計算します。

<comment>Param:</comment>
  <info>resource</info>  <strong>$psdoc</strong>   <strong>ps_new()</strong> が返す、postscript ファイルのリソース ID。
  <info>string</info>    <strong>$text</strong>    幅を計算するテキスト。
  <info>int</info>       <strong>$fontid</strong>  使用するフォントの ID。フォントが指定されていない場合は、 現在のフォントが使用
                     されます。
  <info>float</info>     <strong>$size</strong>    フォントのサイズ。指定されていない場合は現在のサイズが使用されます。

<comment>Return:</comment>
  <info>float</info>  文字列の幅をポイント数で返します。

<comment>See Also:</comment>
   * <strong>ps_string_geometry()</strong>


id: ps_stroke
type: function
doc:
<comment>Description:</comment>
  現在のパスを描画する
  
  <strong>ps_lineto()</strong> のような関数で事前に組み立てられたパスを描画します。

<comment>Param:</comment>
  <info>resource</info>  <strong>$psdoc</strong>  <strong>ps_new()</strong> が返す、postscript ファイルのリソース ID。

<comment>Return:</comment>
  <info>bool</info>  成功した場合に <info>true</info> を、失敗した場合に <info>false</info> を返します。

<comment>See Also:</comment>
   * <strong>ps_closepath_stroke()</strong>
   * <strong>ps_fill()</strong>
   * <strong>ps_fill_stroke()</strong>


id: ps_symbol
type: function
doc:
<comment>Description:</comment>
  グリフを出力する
  
  現在のフォントのフォントエンコーディングベクタの中で <strong>$ord</strong> 番目の位置にあるグリフを出力します。
  フォントエンコーディングは、<strong>ps_findfont()</strong> でフォントを読み込む際に設定することができます。

<comment>Param:</comment>
  <info>resource</info>  <strong>$psdoc</strong>  <strong>ps_new()</strong> が返す、postscript ファイルのリソース ID。
  <info>int</info>       <strong>$ord</strong>    フォントエンコーディングベクタの中でのグリフの位置。

<comment>Return:</comment>
  <info>bool</info>  成功した場合に <info>true</info> を、失敗した場合に <info>false</info> を返します。

<comment>See Also:</comment>
   * <strong>ps_symbol_name()</strong>
   * <strong>ps_symbol_width()</strong>


id: ps_symbol_name
type: function
doc:
<comment>Description:</comment>
  グリフ名を取得する
  
  この関数には、有効なグリフ名を取得するために Adobe のフォントメトリックファイルが必要です。

<comment>Param:</comment>
  <info>resource</info>  <strong>$psdoc</strong>   <strong>ps_new()</strong> が返す、postscript ファイルのリソース ID。
  <info>int</info>       <strong>$ord</strong>     <strong>$ord</strong> は、フォントエンコーディングベクタ の中でのグリフの位置です。
  <info>int</info>       <strong>$fontid</strong>  使用するフォントの ID。フォントが指定されていない場合は、 現在のフォントが使用
                     されます。

<comment>Return:</comment>
  <info>string</info>  指定されたフォントのグリフ名を返します。

<comment>See Also:</comment>
   * <strong>ps_symbol()</strong>
   * <strong>ps_symbol_width()</strong>


id: ps_symbol_width
type: function
doc:
<comment>Description:</comment>
  グリフの幅を取得する
  
  指定されたフォントとサイズで出力した場合に、 グリフの幅が何ポイントになるかを計算します。正確な幅
  を計算するため、 この関数には Adobe のフォントメトリックファイルが必要です。

<comment>Param:</comment>
  <info>resource</info>  <strong>$psdoc</strong>   <strong>ps_new()</strong> が返す、postscript ファイルのリソース ID。
  <info>int</info>       <strong>$ord</strong>     <strong>$ord</strong> は、 フォントエンコーディングベクタの中でのグリフの位置です。
  <info>int</info>       <strong>$fontid</strong>  使用するフォントの ID。フォントが指定されていない場合は、 現在のフォントが使用
                     されます。
  <info>float</info>     <strong>$size</strong>    フォントのサイズ。指定されていない場合は現在のサイズが使用されます。

<comment>Return:</comment>
  <info>float</info>  グリフの幅をポイント数で返します。

<comment>See Also:</comment>
   * <strong>ps_symbol()</strong>
   * <strong>ps_symbol_name()</strong>


id: ps_translate
type: function
doc:
<comment>Description:</comment>
  座標変換を設定する
  
  新しい座標系の原点を設定します。

<comment>Param:</comment>
  <info>resource</info>  <strong>$psdoc</strong>  <strong>ps_new()</strong> が返す、postscript ファイルのリソース ID。
  <info>float</info>     <strong>$x</strong>      変換後の座標系の原点の x 座標。
  <info>float</info>     <strong>$y</strong>      変換後の座標系の原点の y 座標。

<comment>Return:</comment>
  <info>bool</info>  成功した場合に <info>true</info> を、失敗した場合に <info>false</info> を返します。

<comment>See Also:</comment>
   * <strong>ps_scale()</strong>
   * <strong>ps_rotate()</strong>


id: pspell_add_to_personal
type: function
doc:
<comment>Description:</comment>
  ユーザーの単語リストに単語を追加する
  
  <strong>pspell_add_to_personal()</strong> はユーザーの単語リスト に単語を追加します。ディレクトリをオープンするため
  に <strong>pspell_new_config()</strong> を <strong>pspell_config_personal()</strong> とともに使用した場合、 <strong>pspell_save_wordlist()</strong>
  で単語リストを保存することが可能です。

<comment>Param:</comment>
  <info>PSpell\Dictionary</info>  <strong>$dictionary</strong>  <class>PSpell\Dictionary</class> クラスのインスタンス。
  <info>string</info>             <strong>$word</strong>        追加する単語。

<comment>Return:</comment>
  <info>bool</info>  成功した場合に <info>true</info> を、失敗した場合に <info>false</info> を返します。


id: pspell_add_to_session
type: function
doc:
<comment>Description:</comment>
  現在のセッションの単語リストに単語を追加する
  
  <strong>pspell_add_to_session()</strong> は、 現在のセッションに関連する単語リストに単語を追加します。この関数は、
  <strong>pspell_add_to_personal()</strong> に似ています。

<comment>Param:</comment>
  <info>PSpell\Dictionary</info>  <strong>$dictionary</strong>  <class>PSpell\Dictionary</class> クラスのインスタンス。
  <info>string</info>             <strong>$word</strong>        追加する単語。

<comment>Return:</comment>
  <info>bool</info>  成功した場合に <info>true</info> を、失敗した場合に <info>false</info> を返します。


id: pspell_check
type: function
doc:
<comment>Description:</comment>
  単語をチェックする
  
  <strong>pspell_check()</strong> は単語のスペルをチェックします。

<comment>Param:</comment>
  <info>PSpell\Dictionary</info>  <strong>$dictionary</strong>  <class>PSpell\Dictionary</class> クラスのインスタンス。
  <info>string</info>             <strong>$word</strong>        チェックする単語。

<comment>Return:</comment>
  <info>bool</info>  スペルが正しい場合に <info>true</info>、そうでない場合に <info>false</info> を返します。


id: pspell_clear_session
type: function
doc:
<comment>Description:</comment>
  現在のセッションをクリアする
  
  <strong>pspell_clear_session()</strong> は、 現在のセッションをクリアします。現在の単語リストはブランクになり、 例
  えば <strong>pspell_save_wordlist()</strong> でこのリストを保存しても何もおきません。

<comment>Param:</comment>
  <info>PSpell\Dictionary</info>  <strong>$dictionary</strong>  <class>PSpell\Dictionary</class> クラスのインスタンス。

<comment>Return:</comment>
  <info>bool</info>  成功した場合に <info>true</info> を、失敗した場合に <info>false</info> を返します。


id: pspell_config_create
type: function
doc:
<comment>Description:</comment>
  辞書をオープンする際に使用する設定を作成する
  
  辞書をオープンする際に使用する設定を作成します。
  
  <strong>pspell_config_create()</strong> は、 <strong>pspell_new()</strong> の構文に非常によく似ています。実際、 <strong>pspell_new_config()</strong>
  の直後に <strong>pspell_config_create()</strong> を使用した場合、全く同じ 結果となります。しかし、新しい設定を作成
  した後、 <strong>pspell_new_config()</strong> をコールする前に関数 <strong>pspell_config_*()</strong> を使用することで いくつかの進
  んだ機能が使用できます。
  
  より詳細な情報と例については、pspell Web サイト http://aspell.net/ のオンラインマニュアルを参照く
  ださい。

<comment>Param:</comment>
  <info>string</info>  <strong>$language</strong>  パラメータ language は、2 文字の ISO 639 言語コードと オプションでダッシュまた
                     はアンダースコアの後に 2 文字の ISO 3166 国コードからなる言語コードです。
  <info>string</info>  <strong>$spelling</strong>  パラメータ spelling は、英語のように複数のスペルがある言語に関して スペルの指定
                     を行うものです。指定可能な値は、 'american', 'british', 'canadian'です。
  <info>string</info>  <strong>$jargon</strong>    パラメータ jargon は、同じ language および spelling パラメータを有する 2 つの異
                     なる単語リストを区別するための 追加情報を有しています。
  <info>string</info>  <strong>$encoding</strong>  パラメータ encoding は、単語のエンコーディングとして 予想されるものです。有効な
                     値は、'utf-8', 'iso8859-*', 'koi8-r', 'viscii', 'cp1252', 'machine unsigned
                     16', 'machine unsigned 32' です。このパラメータはよくテストされていないため、
                     使用する際には注意してください。

<comment>Return:</comment>
  <info>PSpell\Config</info>  <class>PSpell\Config</class> クラスのインスタンスを返します。


id: pspell_config_data_dir
type: function
doc:
<comment>Description:</comment>
  言語のデータファイルの場所
  
  この関数は、
  現在のところ詳細な情報はありません。引数のリストのみが
  記述されています。
  
  この関数は、
  現在のところ詳細な情報はありません。引数のリストのみが
  記述されています。

<comment>Return:</comment>
  <info>bool</info>  成功した場合に <info>true</info> を、失敗した場合に <info>false</info> を返します。


id: pspell_config_dict_dir
type: function
doc:
<comment>Description:</comment>
  メイン単語リストの場所
  
  この関数は、
  現在のところ詳細な情報はありません。引数のリストのみが
  記述されています。
  
  この関数は、
  現在のところ詳細な情報はありません。引数のリストのみが
  記述されています。

<comment>Return:</comment>
  <info>bool</info>  成功した場合に <info>true</info> を、失敗した場合に <info>false</info> を返します。


id: pspell_config_ignore
type: function
doc:
<comment>Description:</comment>
  長さが N 文字未満の単語を無視する
  
  <strong>pspell_config_ignore()</strong> は、 <strong>pspell_new_config()</strong> をコールする前に使用しなければなりません。 この関
  数は、スペルチェッカに無視させる短い単語の長さを指定します。

<comment>Param:</comment>
  <info>PSpell\Config</info>  <strong>$config</strong>      <class>PSpell\Config</class> クラスのインスタンス。
  <info>int</info>            <strong>$min_length</strong>  <strong>$min_length</strong> 文字より短い単語をスキップします。

<comment>Return:</comment>
  <info>bool</info>  成功した場合に <info>true</info> を、失敗した場合に <info>false</info> を返します。


id: pspell_config_mode
type: function
doc:
<comment>Description:</comment>
  返される提案の数のモードを変更する
  
  <strong>pspell_config_mode()</strong> は、 <strong>pspell_new_config()</strong> のコール前に設定を行う際に使用します。この関数は、
  <strong>pspell_suggest()</strong> により返される修正候補の数を定義します。

<comment>Param:</comment>
  <info>PSpell\Config</info>  <strong>$config</strong>  <class>PSpell\Config</class> クラスのインスタンス。
  <info>int</info>            <strong>$mode</strong>    パラメータ mode は、スペルチェッカの動作モードです。 使用可能なモードを以
                          下に示します。 <info>PSPELL_FAST</info> - 高速モード (修正候補の数は最小) <info>PSPELL_NORMAL</info>
                          - 通常モード (修正候補はより多い) <info>PSPELL_BAD_SPELLERS</info> - 低速モード (修正候
                          補は多い)
                          
                          <info>PSPELL_FAST</info> - 高速モード (修正候補の数は最小)
                          
                          <info>PSPELL_NORMAL</info> - 通常モード (修正候補はより多い)
                          
                          <info>PSPELL_BAD_SPELLERS</info> - 低速モード (修正候補は多い)

<comment>Return:</comment>
  <info>bool</info>  成功した場合に <info>true</info> を、失敗した場合に <info>false</info> を返します。


id: pspell_config_personal
type: function
doc:
<comment>Description:</comment>
  個人の単語リストを保持するファイルを設定する
  
  個人の単語リストファイルを設定します。個人の単語リストは、 <strong>pspell_new_config()</strong>をコールした後にロー
  ドされ、 標準的な単語リストに追加されて使用されます。このファイルは、 <strong>pspell_save_wordlist()</strong> によ
  り個人的な単語リスト が保存されるファイルでもあります。
  
  <strong>pspell_config_personal()</strong> は、 <strong>pspell_new_config()</strong> をコールする前に設定を行うために使用する必要があ
  ります。

<comment>Param:</comment>
  <info>PSpell\Config</info>  <strong>$config</strong>    <class>PSpell\Config</class> クラスのインスタンス。
  <info>string</info>         <strong>$filename</strong>  個人の単語リスト。存在しない場合は作成します。PHP の実行ユーザー (たとえ
                            ば nobody) が書き込み可能である必要があります。

<comment>Return:</comment>
  <info>bool</info>  成功した場合に <info>true</info> を、失敗した場合に <info>false</info> を返します。


id: pspell_config_repl
type: function
doc:
<comment>Description:</comment>
  置換候補を保持するファイルを設定する
  
  置換候補を保持するファイルを設定します。
  
  置換の組は、スペルチェッカの品質を改善します。 単語のスペルミスをした場合、そして、適当な修正候補
  がリストにあった場合、 <strong>pspell_store_replacement()</strong> を置換候補を保存するために使用し、置換候補を含む
  単語リストを保存するために <strong>pspell_save_wordlist()</strong>を使用することが可能です。
  
  <strong>pspell_config_repl()</strong> は、 <strong>pspell_new_config()</strong> をコールする前に設定を行うために使用する必要がありま
  す。

<comment>Param:</comment>
  <info>PSpell\Config</info>  <strong>$config</strong>    <class>PSpell\Config</class> クラスのインスタンス。
  <info>string</info>         <strong>$filename</strong>  このファイルは PHP の実行ユーザー (たとえば nobody) が書き込み可能である
                            必要があります。

<comment>Return:</comment>
  <info>bool</info>  成功した場合に <info>true</info> を、失敗した場合に <info>false</info> を返します。


id: pspell_config_runtogether
type: function
doc:
<comment>Description:</comment>
  複合語を有効な単語の組み合わせとして考慮する
  
  この関数は、複合語を正しい複合語として処理するかどうかを定義します。 つまり、"thecat" には、二つの
  単語の間に空白はありませんが、 正しい複合語となります。この設定の変更は、 <strong>pspell_check()</strong> による戻
  り値にのみ影響を与えます。 <strong>pspell_suggest()</strong> は、この場合でも修正候補を返します。
  
  <strong>pspell_config_runtogether()</strong> は、 <strong>pspell_new_config()</strong> をコールする前に設定を行うために使用する必要
  があります。

<comment>Param:</comment>
  <info>PSpell\Config</info>  <strong>$config</strong>  <class>PSpell\Config</class> クラスのインスタンス。
  <info>bool</info>           <strong>$allow</strong>   連続した単語を複合語として扱う場合な <info>true</info>、 それ以外の場合は <info>false</info>。

<comment>Return:</comment>
  <info>bool</info>  成功した場合に <info>true</info> を、失敗した場合に <info>false</info> を返します。


id: pspell_config_save_repl
type: function
doc:
<comment>Description:</comment>
  単語リストと共に置換リストを保存するかどうかを定義する
  
  <strong>pspell_config_save_repl()</strong> は、 <strong>pspell_save_wordlist()</strong>  が単語リストと共に置換リストを保存するかど
  うかを定義します。 通常はこの関数を使用する必要はありません。なぜなら、 <strong>pspell_config_repl()</strong> を使
  用した場合は置換の組は <strong>pspell_save_wordlist()</strong> により保存され、 そうでない場合には置換の組は保存さ
  れないためです。
  
  <strong>pspell_config_save_repl()</strong> は、 <strong>pspell_new_config()</strong> のコール前に設定を行う際に使用します。

<comment>Param:</comment>
  <info>PSpell\Config</info>  <strong>$config</strong>  <class>PSpell\Config</class> クラスのインスタンス。
  <info>bool</info>           <strong>$save</strong>    置換リストを保存する場合に <info>true</info>、それ以外の場合に <info>false</info>。

<comment>Return:</comment>
  <info>bool</info>  成功した場合に <info>true</info> を、失敗した場合に <info>false</info> を返します。


id: pspell_new
type: function
doc:
<comment>Description:</comment>
  新規辞書をロードする
  
  <strong>pspell_new()</strong> は、新規の辞書をロードして <class>PSpell\Dictionary</class> クラスのインスタンスを返します。 このイ
  ンスタンスは、他の pspell 関数で使用されます。
  
  詳細な情報および例については、pspell の Web サイト :http://aspell.net/ にあるインラインマニュアル
  を参照ください。

<comment>Param:</comment>
  <info>string</info>  <strong>$language</strong>  パラメータ language は、2 文字の ISO 639 言語コードと オプションでダッシュまた
                     はアンダースコアの後に 2 文字の ISO 3166 国コードからなる言語コードです。
  <info>string</info>  <strong>$spelling</strong>  パラメータ spelling は、英語のように複数のスペルがある言語に関して スペルの指定
                     を行うものです。指定可能な値は、 'american', 'british', 'canadian'です。
  <info>string</info>  <strong>$jargon</strong>    パラメータ jargon は、同じ language および spelling パラメータを有する 2 つの異
                     なる単語リストを区別するための 追加情報を有しています。
  <info>string</info>  <strong>$encoding</strong>  パラメータ encoding は、単語のエンコーディングとして 予想されるものです。有効な
                     値は、'utf-8', 'iso8859-*', 'koi8-r', 'viscii', 'cp1252', 'machine unsigned
                     16', 'machine unsigned 32' です。このパラメータはよくテストされていないため、
                     使用する際には注意してください。
  <info>int</info>     <strong>$mode</strong>      パラメータ mode は、スペルチェッカの動作モードです。 使用可能なモードを以下に示
                     します。 <info>PSPELL_FAST</info> - 高速モード (修正候補の数は最小) <info>PSPELL_NORMAL</info> - 通常モー
                     ド (修正候補はより多い) <info>PSPELL_BAD_SPELLERS</info> - 低速モード (修正候補は多い)
                     <info>PSPELL_RUN_TOGETHER</info> - つながった単語を複合語 （legal compound）として考慮しま
                     す。この場合、"thecat" には二つの 単語の間に空白はありませんが複合語となりま
                     す。この設定の変更は <strong>pspell_check()</strong> から返される結果にのみ影響します。 設定変更
                     後も <strong>pspell_suggest()</strong> は修正候補を返します。  mode は、これらのさまざまな定数を
                     用いたビットマスクです。 しかし <info>PSPELL_FAST</info>、 <info>PSPELL_NORMAL</info> および
                     <info>PSPELL_BAD_SPELLERS</info> は相反するため、 この中のひとつを選択する必要があります。
                     
                     <info>PSPELL_FAST</info> - 高速モード (修正候補の数は最小)
                     
                     <info>PSPELL_NORMAL</info> - 通常モード (修正候補はより多い)
                     
                     <info>PSPELL_BAD_SPELLERS</info> - 低速モード (修正候補は多い)
                     
                     <info>PSPELL_RUN_TOGETHER</info> - つながった単語を複合語 （legal compound）として考慮しま
                     す。この場合、"thecat" には二つの 単語の間に空白はありませんが複合語となりま
                     す。この設定の変更は <strong>pspell_check()</strong> から返される結果にのみ影響します。 設定変更
                     後も <strong>pspell_suggest()</strong> は修正候補を返します。

<comment>Return:</comment>
  <info>PSpell\Dictionary|false</info>  成功した場合に、 <class>PSpell\Dictionary</class> クラスのインスタンスを返します。 失敗
                           した場合に <info>false</info> を返します


id: pspell_new_config
type: function
doc:
<comment>Description:</comment>
  指定した設定に基づき新規辞書をロードする
  
  <strong>pspell_new_config()</strong> は、 <strong>pspell_config_create()</strong> で作成され、 関数 <strong>pspell_config_*()</strong> で修正された
  <strong>$config</strong> を使用して 新規辞書をオープンします。この方法は最も柔軟で、 <strong>pspell_new()</strong> および
  <strong>pspell_new_personal()</strong> で提供された全ての機能を有しています。

<comment>Param:</comment>
  <info>PSpell\Config</info>  <strong>$config</strong>  パラメータ <strong>$config</strong> は、config が作成された際に <strong>pspell_config_create()</strong> によ
                          り返されたパラメータです。

<comment>Return:</comment>
  <info>PSpell\Dictionary|false</info>  成功した場合に <class>PSpell\Dictionary</class> クラスのインスタンスを返します。 失敗し
                           た場合に <info>false</info> を返します。


id: pspell_new_personal
type: function
doc:
<comment>Description:</comment>
  個人の単語リストを有する新規辞書をロードする
  
  <strong>pspell_new_personal()</strong> は、個人の単語リストと共に 新規辞書をオープンし、辞書リンクIDを返します。こ
  の ID は他の pspell 関数で使用されます。単語リストは修正可能で、必要に応じて
  <strong>pspell_save_wordlist()</strong> で保存することも可能です。 しかし、置換の組は保存されません。置換の組を保存
  するには、 <strong>pspell_config_create()</strong> を用いて設定を作成し、 <strong>pspell_config_personal()</strong> で個人の単語リス
  トを 設定し、<strong>pspell_config_repl()</strong> で置換のファイルを 設定し、<strong>pspell_new_config()</strong> で新規の辞書を
  オープンします。
  
  詳細な情報および例については、pspell の Web サイト :http://aspell.net/ にあるインラインマニュアル
  を参照ください。

<comment>Param:</comment>
  <info>string</info>  <strong>$filename</strong>  個人リストに追加された単語が保存される場所を指定します。 この場所には '/' で始
                     まる絶対パスのファイル名を指定する必要があります。 そうでない場合は $HOME から
                     の相対パスになりますが、 これは多くのシステムでは、"/root" であり、 おそらく望
                     ましい結果とはならないためです。
  <info>string</info>  <strong>$language</strong>  2 文字の ISO 639 言語コードと オプションでダッシュまたはアンダースコアの後に 2
                     文字の ISO 3166 国コードからなる言語コードです。
  <info>string</info>  <strong>$spelling</strong>  英語のように複数のスペルがある言語に関して スペルの指定を行うものです。指定可能
                     な値は、 'american', 'british', 'canadian'です。
  <info>string</info>  <strong>$jargon</strong>    同じ language および spelling パラメータを有する 2 つの異なる単語リストを区別す
                     るための 追加情報を有しています。
  <info>string</info>  <strong>$encoding</strong>  単語のエンコーディングとして予想されるもの。有効な値は、 <return>utf-8</return>, <return>iso8859-*</return>,
                     <return>koi8-r</return>, <return>viscii</return>,  <return>cp1252</return>, <return>machine unsigned 16</return>,  <return>machine unsigned 32</return> です。
  <info>int</info>     <strong>$mode</strong>      スペルチェッカの動作モードです。 使用可能なモードを以下に示します。 <info>PSPELL_FAST</info>
                     - 高速モード (修正候補の数は最小) <info>PSPELL_NORMAL</info> - 通常モード (修正候補はより多
                     い) <info>PSPELL_BAD_SPELLERS</info> - 低速モード (修正候補は多い) <info>PSPELL_RUN_TOGETHER</info> - つ
                     ながった単語を複合語 （legal compound）として考慮します。この場合、"thecat" に
                     は二つの 単語の間に空白はありませんが複合語となります。この設定の変更は
                     <strong>pspell_check()</strong> から返される結果にのみ影響します。 設定変更後も <strong>pspell_suggest()</strong>
                     は修正候補を返します。  mode は、これらのさまざまな定数を用いたビットマスクで
                     す。 しかし <info>PSPELL_FAST</info>、 <info>PSPELL_NORMAL</info> および <info>PSPELL_BAD_SPELLERS</info> は相反するた
                     め、 この中のひとつを選択する必要があります。
                     
                     <info>PSPELL_FAST</info> - 高速モード (修正候補の数は最小)
                     
                     <info>PSPELL_NORMAL</info> - 通常モード (修正候補はより多い)
                     
                     <info>PSPELL_BAD_SPELLERS</info> - 低速モード (修正候補は多い)
                     
                     <info>PSPELL_RUN_TOGETHER</info> - つながった単語を複合語 （legal compound）として考慮しま
                     す。この場合、"thecat" には二つの 単語の間に空白はありませんが複合語となりま
                     す。この設定の変更は <strong>pspell_check()</strong> から返される結果にのみ影響します。 設定変更
                     後も <strong>pspell_suggest()</strong> は修正候補を返します。

<comment>Return:</comment>
  <info>PSpell\Dictionary|false</info>  成功した場合に、 <class>PSpell\Dictionary</class> クラスのインスタンスを返します。 失敗
                           した場合に <info>false</info> を返します


id: pspell_save_wordlist
type: function
doc:
<comment>Description:</comment>
  個人の単語リストをファイルに保存する
  
  <strong>pspell_save_wordlist()</strong> は、 現在のセッションから個人の単語リストを保存します。 ファイルの位置は
  <strong>pspell_config_personal()</strong> および(オプションで) <strong>pspell_config_repl()</strong> で指定されている必要がありま
  す。

<comment>Param:</comment>
  <info>PSpell\Dictionary</info>  <strong>$dictionary</strong>  <class>PSpell\Dictionary</class> クラスのインスタンス。

<comment>Return:</comment>
  <info>bool</info>  成功した場合に <info>true</info> を、失敗した場合に <info>false</info> を返します。


id: pspell_store_replacement
type: function
doc:
<comment>Description:</comment>
  単語を置換する組を保存する
  
  <strong>pspell_store_replacement()</strong> は、単語の置換候補を 保存します。これにより、この後の <strong>pspell_suggest()</strong>
  で置換候補を返すことが可能と なります。この関数の利点を活かすためには、辞書をオープンする際に
  <strong>pspell_new_personal()</strong> を使用する必要があります。 置換候補を恒久的に保存するためには
  <strong>pspell_config_personal()</strong> を使用する必要があり、 <strong>pspell_config_repl()</strong> によりカスタム単語リストを 保
  存するパスを設定し、この後、変更点をディスクへ書き込むために <strong>pspell_save_wordlist()</strong> を使用する必要
  があります。

<comment>Param:</comment>
  <info>PSpell\Dictionary</info>  <strong>$dictionary</strong>  <class>PSpell\Dictionary</class> クラスのインスタンス。
  <info>string</info>             <strong>$misspelled</strong>  まちがったスペルの単語。
  <info>string</info>             <strong>$correct</strong>     <strong>$misspelled</strong> を修正した単語。

<comment>Return:</comment>
  <info>bool</info>  成功した場合に <info>true</info> を、失敗した場合に <info>false</info> を返します。


id: pspell_suggest
type: function
doc:
<comment>Description:</comment>
  単語のスペルについて修正候補を示す
  
  <strong>pspell_suggest()</strong> は、 指定した単語について可能性のあるスペルの配列を返します。

<comment>Param:</comment>
  <info>PSpell\Dictionary</info>  <strong>$dictionary</strong>  <class>PSpell\Dictionary</class> クラスのインスタンス。
  <info>string</info>             <strong>$word</strong>        調べたい単語。

<comment>Return:</comment>
  <info>array|false</info>  修正候補の配列を返します。


id: putenv
type: function
doc:
<comment>Description:</comment>
  環境変数の値を設定する
  
  サーバーの環境変数に <strong>$assignment</strong> を追加します。 この環境変数は、カレントのリクエストを実行している
  間のみ存在します。 リクエスト終了時、環境変数は元の状態に戻されます。

<comment>Param:</comment>
  <info>string</info>  <strong>$assignment</strong>  <return>"FOO=BAR"</return> 形式の設定。

<comment>Return:</comment>
  <info>bool</info>  成功した場合に <info>true</info> を、失敗した場合に <info>false</info> を返します。

<comment>See Also:</comment>
   * <strong>getenv()</strong>
   * <strong>apache_setenv()</strong>


id: quoted_printable_decode
type: function
doc:
<comment>Description:</comment>
  quoted-printable 文字列を 8 ビット文字列に変換する
  
  この関数は、quoted printable 文字列をデコードし、 8 ビットバイナリ文字列を返します (RFC2821 の
  section 4.5.2 ではなく RFC2045 の section 6.7 によれば、付随するピリオドは行の開始から削除されませ
  ん) 。
  
  この関数は <strong>imap_qprint()</strong> に似ていますが、 動作に IMAP モジュールを必要としないという違いがありま
  す。

<comment>Param:</comment>
  <info>string</info>  <strong>$string</strong>  入力文字列。

<comment>Return:</comment>
  <info>string</info>  8 ビットバイナリ文字列を返します。

<comment>See Also:</comment>
   * <strong>quoted_printable_encode()</strong>


id: quoted_printable_encode
type: function
doc:
<comment>Description:</comment>
  8 ビット文字列を quoted-printable 文字列に変換する
  
  RFC2045 の section 6.7 に従って作成した quoted printable 文字列を返します。
  
  この関数は <strong>imap_8bit()</strong> に似ていますが、 動作に IMAP モジュールを必要としないという違いがあります。

<comment>Param:</comment>
  <info>string</info>  <strong>$string</strong>  入力文字列。

<comment>Return:</comment>
  <info>string</info>  エンコードされた文字列を返します。

<comment>See Also:</comment>
   * <strong>quoted_printable_decode()</strong>


id: quotemeta
type: function
doc:
<comment>Description:</comment>
  メタ文字をクォートする
  
  文字列 <strong>$str</strong> について、 . \ + * ? [ ^ ] ( $ ) の前にバックスラッシュ文字 (<return>\</return>) でクォートして返しま
  す。

<comment>Param:</comment>
  <info>string</info>  <strong>$string</strong>  入力文字列。

<comment>Return:</comment>
  <info>string</info>  メタ文字をクォートした文字列を返します。 空文字を <strong>$string</strong> に渡した場合は <info>false</info> を返しま
          す。

<comment>See Also:</comment>
   * <strong>addslashes()</strong>
   * <strong>addcslashes()</strong>
   * <strong>htmlentities()</strong>
   * <strong>htmlspecialchars()</strong>
   * <strong>nl2br()</strong>
   * <strong>stripslashes()</strong>
   * <strong>stripcslashes()</strong>
   * <strong>preg_quote()</strong>


id: rad2deg
type: function
doc:
<comment>Description:</comment>
  ラジアン単位の数値を度単位に変換する
    
  
  この関数は、<strong>$num</strong> の単位をラジアンから度に変換します。

<comment>Param:</comment>
  <info>float</info>  <strong>$num</strong>  ラジアン値。

<comment>Return:</comment>
  <info>float</info>  <strong>$num</strong> と同等な値を度で表したものを返します。

<comment>See Also:</comment>
   * <strong>deg2rad()</strong>


id: radius_acct_open
type: function
doc:
<comment>Description:</comment>
  課金用の Radius ハンドルを作成する

<comment>Return:</comment>
  <info>resource</info>  成功した場合にハンドル、エラー時に <info>false</info> を返します。 この関数が失敗するのは、無効なメモ
            リを使用した場合のみです。


id: radius_add_server
type: function
doc:
<comment>Description:</comment>
  サーバーを追加する
  
  <strong>radius_add_server()</strong> は複数回コールされることも ありえます。また、<strong>radius_config()</strong> とともに 使用され
  ることでしょう。最大で 10 までのサーバーを指定できます。 複数のサーバーが指定されると、有効なレス
  ポンスを受信するか あるいは各サーバーへの接続回数が <strong>$max_tries</strong> をこえるまでラウンドロビン形式での
  アクセスを試みます。

<comment>Param:</comment>
  <info>resource</info>  <strong>$radius_handle</strong>  
  <info>string</info>    <strong>$hostname</strong>       <strong>$hostname</strong> はサーバーのホストを FQDN あるいはドット区切りの IP アドレス形
                            式で指定します。
  <info>int</info>       <strong>$port</strong>           <strong>$port</strong> は、サーバーとの接続に使用する UDP ポートを指定します。0 を指定す
                            ると、このライブラリは ネットワークサービスデータベースから radius/udp
                            あるいは radacct/udp サービスを 検索し、見つかったポートを使用します。見
                            つからなかった場合は 標準の Radius ポート、すなわち認証には 1812、 課金
                            には 1813 を使用します。
  <info>string</info>    <strong>$secret</strong>         <strong>$secret</strong> パラメータには、サーバーホストに 対する共有秘密鍵が渡されます。
                            Radius プロトコルは、共有秘密鍵の 最初の 128 バイト以外を無視します。
  <info>int</info>       <strong>$timeout</strong>        <strong>$timeout</strong> パラメータには、サーバーから 応答を受信する際のタイムアウトを秒
                            単位で指定します。
  <info>int</info>       <strong>$max_tries</strong>      結果が返ってこなかった場合に最大何回までリクエストを繰り返すかを
                            <strong>$max_tries</strong> に指定します。

<comment>Return:</comment>
  <info>bool</info>  成功した場合に <info>true</info> を、失敗した場合に <info>false</info> を返します。

<comment>See Also:</comment>
   * <strong>radius_config()</strong>


id: radius_auth_open
type: function
doc:
<comment>Description:</comment>
  認証用の Radius ハンドルを作成する

<comment>Return:</comment>
  <info>resource</info>  成功した場合にハンドル、エラー時に <info>false</info> を返します。 この関数が失敗するのは、無効なメモ
            リを使用した場合のみです。


id: radius_close
type: function
doc:
<comment>Description:</comment>
  すべてのリソースを開放する
  
  各リクエストの終了時に PHP がすべてのリソースを開放するので、 この関数をコールする必要はありませ
  ん。

<comment>Param:</comment>
  <info>resource</info>  <strong>$radius_handle</strong>  The RADIUS resource.

<comment>Return:</comment>
  <info>bool</info>  成功した場合に <info>true</info> を、失敗した場合に <info>false</info> を返します。


id: radius_config
type: function
doc:
<comment>Description:</comment>
  指定した設定ファイルをライブラリに読み込ませる
  
  Radius リクエストを発行する前には、ライブラリが接続可能なサーバーを 知っている必要があります。ライ
  ブラリを設定するいちばん簡単な方法は <strong>radius_config()</strong> をコールすることです。 <strong>radius_config()</strong> は、ラ
  イブラリに radius.conf 形式のファイルを読み込ませます。

<comment>Param:</comment>
  <info>resource</info>  <strong>$radius_handle</strong>  
  <info>string</info>    <strong>$file</strong>           設定ファイルへのパスを、引数として <strong>radius_config()</strong> に渡します。
                            <strong>radius_add_server()</strong> をコールすることで、 プログラム上でライブラリの設定
                            をすることも可能です。

<comment>Return:</comment>
  <info>bool</info>  成功した場合に <info>true</info> を、失敗した場合に <info>false</info> を返します。

<comment>See Also:</comment>
   * <strong>radius_add_server()</strong>


id: radius_create_request
type: function
doc:
<comment>Description:</comment>
  課金あるいは認証のリクエストを作成する
  
  Radius リクエストには、リクエストの種類を指定するコードおよび 追加情報を指定するゼロ個以上の属性が
  含まれます。新しいリクエストを 作成するには、<strong>radius_create_request()</strong> をコールします。
  
  注意: 属性を設定する前にこの関数をコールする必要があります。

<comment>Param:</comment>
  <info>resource</info>  <strong>$radius_handle</strong>  
  <info>int</info>       <strong>$type</strong>           <info>RADIUS_ACCESS_REQUEST</info> あるいは <info>RADIUS_ACCOUNTING_REQUEST</info> のいずれか。

<comment>Return:</comment>
  <info>bool</info>  成功した場合に <info>true</info> を、失敗した場合に <info>false</info> を返します。

<comment>See Also:</comment>
   * <strong>radius_send_request()</strong>


id: radius_cvt_addr
type: function
doc:
<comment>Description:</comment>
  生データを IP アドレスに変換する
  
  生データをIPアドレスに変換します。

<comment>Param:</comment>
  <info>string</info>  <strong>$data</strong>  入力値

<comment>Return:</comment>
  <info>string</info>  IPアドレスを返します。

<comment>See Also:</comment>
   * <strong>radius_cvt_int()</strong>
   * <strong>radius_cvt_string()</strong>


id: radius_cvt_int
type: function
doc:
<comment>Description:</comment>
  生データを整数に変換する
  
  生データを整数に変換します。

<comment>Param:</comment>
  <info>string</info>  <strong>$data</strong>  入力値

<comment>Return:</comment>
  <info>int</info>  データから取得した整数を返します。

<comment>See Also:</comment>
   * <strong>radius_cvt_addr()</strong>
   * <strong>radius_cvt_string()</strong>


id: radius_cvt_string
type: function
doc:
<comment>Description:</comment>
  生データを文字列に変換する
  
  生データを文字列に変換します。

<comment>Param:</comment>
  <info>string</info>  <strong>$data</strong>  入力値

<comment>Return:</comment>
  <info>string</info>  データから取得した文字列を返します。

<comment>See Also:</comment>
   * <strong>radius_cvt_addr()</strong>
   * <strong>radius_cvt_int()</strong>


id: radius_demangle
type: function
doc:
<comment>Description:</comment>
  データを復元する
  
  セキュリティ上の理由により、(パスワード、MS-CHAPv1 MPPE キーなど) いくつかのデータは変形されます。
  それを使用する際には事前に復元する 必要があります。

<comment>Param:</comment>
  <info>resource</info>  <strong>$radius_handle</strong>  The RADIUS resource.
  <info>string</info>    <strong>$mangled</strong>        復元対象のデータ

<comment>Return:</comment>
  <info>string</info>  復元した文字列、あるいはエラー時には <info>false</info> を返します。


id: radius_demangle_mppe_key
type: function
doc:
<comment>Description:</comment>
  変形されたデータから mppe キーを得る
  
  MS-CHAPv2 で MPPE を使用している場合には、送信キーおよび受信キーが 変形されます (RFC 2548 を参照く
  ださい)。しかしこの関数は無意味です。なぜなら PHP では PPTP-MPPE は実装されていないし、今後も実装
  されるとは思えないからです。

<comment>Param:</comment>
  <info>resource</info>  <strong>$radius_handle</strong>  The RADIUS resource.
  <info>string</info>    <strong>$mangled</strong>        復元対象のデータ

<comment>Return:</comment>
  <info>string</info>  復元したデータ、あるいはエラー時には <info>false</info> を返します。


id: radius_get_attr
type: function
doc:
<comment>Description:</comment>
  属性を取得する
  
  Radius リクエストと同様、各レスポンスもゼロ個以上の属性を含んでいます。 <strong>radius_send_request()</strong> でレ
  スポンスを受け取ったら、 <strong>radius_get_attr()</strong> を使用して各属性を抽出することが できます。
  <strong>radius_get_attr()</strong> がコールされるたびに、 現在のレスポンスから次の属性を取得します。

<comment>Param:</comment>
  <info>resource</info>  <strong>$radius_handle</strong>  The RADIUS resource.

<comment>Return:</comment>
  <info>mixed</info>  属性の型とデータを含む連想配列、あるいは 0 以上の エラー番号を返します。

<comment>See Also:</comment>
   * <strong>radius_put_attr()</strong>
   * <strong>radius_get_vendor_attr()</strong>
   * <strong>radius_put_vendor_attr()</strong>
   * <strong>radius_send_request()</strong>


id: radius_get_tagged_attr_data
type: function
doc:
<comment>Description:</comment>
  Extracts the data from a tagged attribute
  
  If a tagged attribute has been returned from <strong>radius_get_attr()</strong>, <strong>radius_get_tagged_attr_data()</strong> will
  return the data from the attribute.

<comment>Param:</comment>
  <info>string</info>  <strong>$data</strong>  The tagged attribute to be decoded.

<comment>Return:</comment>
  <info>string|false</info>  Returns the data from the tagged attribute 失敗した場合に <info>false</info> を返します.

<comment>See Also:</comment>
   * <strong>radius_get_attr()</strong>
   * <strong>radius_get_tagged_attr_tag()</strong>


id: radius_get_tagged_attr_tag
type: function
doc:
<comment>Description:</comment>
  Extracts the tag from a tagged attribute
  
  If a tagged attribute has been returned from <strong>radius_get_attr()</strong>, <strong>radius_get_tagged_attr_data()</strong> will
  return the tag from the attribute.

<comment>Param:</comment>
  <info>string</info>  <strong>$data</strong>  The tagged attribute to be decoded.

<comment>Return:</comment>
  <info>int|false</info>  Returns the tag from the tagged attribute 失敗した場合に <info>false</info> を返します.

<comment>See Also:</comment>
   * <strong>radius_get_attr()</strong>
   * <strong>radius_get_tagged_attr_data()</strong>


id: radius_get_vendor_attr
type: function
doc:
<comment>Description:</comment>
  ベンダ固有の属性を取得する
  
  <strong>radius_get_attr()</strong> が <info>RADIUS_VENDOR_SPECIFIC</info> を返す場合に、 ベンダを特定するために
  <strong>radius_get_vendor_attr()</strong> をコールします。

<comment>Param:</comment>
  <info>string</info>  <strong>$data</strong>  入力値

<comment>Return:</comment>
  <info>array</info>  属性の型、ベンダおよびデータを含む連想配列か、エラー時には <info>false</info> を返します。

<comment>See Also:</comment>
   * <strong>radius_get_attr()</strong>
   * <strong>radius_put_vendor_attr()</strong>


id: radius_put_addr
type: function
doc:
<comment>Description:</comment>
  IP アドレス属性を設定する
  
  IP アドレス属性を、現在の RADIUS リクエストにアタッチします。
  
  A request must be created via <strong>radius_create_request()</strong> before this function can be called.

<comment>Param:</comment>
  <info>resource</info>  <strong>$radius_handle</strong>  The RADIUS resource.
  <info>int</info>       <strong>$type</strong>           The attribute type.
  <info>string</info>    <strong>$addr</strong>           IPv4 アドレスを表す文字列。 <return>10.0.0.1</return> など。
  <info>int</info>       <strong>$options</strong>        A bitmask of the attribute options. The available options include
                            <info>RADIUS_OPTION_TAGGED</info> and <info>RADIUS_OPTION_SALT</info>.
  <info>int</info>       <strong>$tag</strong>            The attribute tag. This parameter is ignored unless the
                            <info>RADIUS_OPTION_TAGGED</info> option is set.

<comment>Return:</comment>
  <info>bool</info>  成功した場合に <info>true</info> を、失敗した場合に <info>false</info> を返します。


id: radius_put_attr
type: function
doc:
<comment>Description:</comment>
  バイナリ属性を設定する
  
  バイナリ属性を、現在の RADIUS リクエストにアタッチします。
  
  A request must be created via <strong>radius_create_request()</strong> before this function can be called.

<comment>Param:</comment>
  <info>resource</info>  <strong>$radius_handle</strong>  The RADIUS resource.
  <info>int</info>       <strong>$type</strong>           The attribute type.
  <info>string</info>    <strong>$value</strong>          属性の値。バイナリ文字列として扱われます。
  <info>int</info>       <strong>$options</strong>        A bitmask of the attribute options. The available options include
                            <info>RADIUS_OPTION_TAGGED</info> and <info>RADIUS_OPTION_SALT</info>.
  <info>int</info>       <strong>$tag</strong>            The attribute tag. This parameter is ignored unless the
                            <info>RADIUS_OPTION_TAGGED</info> option is set.

<comment>Return:</comment>
  <info>bool</info>  成功した場合に <info>true</info> を、失敗した場合に <info>false</info> を返します。

<comment>See Also:</comment>
   * <strong>radius_get_attr()</strong>
   * <strong>radius_get_vendor_attr()</strong>
   * <strong>radius_put_vendor_attr()</strong>


id: radius_put_int
type: function
doc:
<comment>Description:</comment>
  整数属性を設定する
  
  整数属性を、現在の RADIUS リクエストにアタッチします。
  
  A request must be created via <strong>radius_create_request()</strong> before this function can be called.

<comment>Param:</comment>
  <info>resource</info>  <strong>$radius_handle</strong>  The RADIUS resource.
  <info>int</info>       <strong>$type</strong>           The attribute type.
  <info>int</info>       <strong>$value</strong>          属性の値。
  <info>int</info>       <strong>$options</strong>        A bitmask of the attribute options. The available options include
                            <info>RADIUS_OPTION_TAGGED</info> and <info>RADIUS_OPTION_SALT</info>.
  <info>int</info>       <strong>$tag</strong>            The attribute tag. This parameter is ignored unless the
                            <info>RADIUS_OPTION_TAGGED</info> option is set.

<comment>Return:</comment>
  <info>bool</info>  成功した場合に <info>true</info> を、失敗した場合に <info>false</info> を返します。

<comment>See Also:</comment>
   * <strong>radius_put_string()</strong>
   * <strong>radius_put_vendor_int()</strong>
   * <strong>radius_put_vendor_string()</strong>


id: radius_put_string
type: function
doc:
<comment>Description:</comment>
  文字列属性を設定する
  
  文字列属性を、現在の RADIUS リクエストにアタッチします。 一般に、文字列属性をアタッチするには
  <strong>radius_put_attr()</strong> のほうがより便利です。 というのも、こちらのほうはバイナリセーフだからです。
  
  A request must be created via <strong>radius_create_request()</strong> before this function can be called.

<comment>Param:</comment>
  <info>resource</info>  <strong>$radius_handle</strong>  The RADIUS resource.
  <info>int</info>       <strong>$type</strong>           The attribute type.
  <info>string</info>    <strong>$value</strong>          属性の値。 これはヌル終端であることが期待されています。つまり、このパラ
                            メータはバイナリセーフではないということです。
  <info>int</info>       <strong>$options</strong>        A bitmask of the attribute options. The available options include
                            <info>RADIUS_OPTION_TAGGED</info> and <info>RADIUS_OPTION_SALT</info>.
  <info>int</info>       <strong>$tag</strong>            The attribute tag. This parameter is ignored unless the
                            <info>RADIUS_OPTION_TAGGED</info> option is set.

<comment>Return:</comment>
  <info>bool</info>  成功した場合に <info>true</info> を、失敗した場合に <info>false</info> を返します。

<comment>See Also:</comment>
   * <strong>radius_put_int()</strong>
   * <strong>radius_put_vendor_int()</strong>
   * <strong>radius_put_vendor_string()</strong>


id: radius_put_vendor_addr
type: function
doc:
<comment>Description:</comment>
  ベンダー固有の IP アドレス属性を設定する
  
  ベンダー固有の IP アドレス属性を、現在の RADIUS リクエストにアタッチします。
  
  A request must be created via <strong>radius_create_request()</strong> before this function can be called.

<comment>Param:</comment>
  <info>resource</info>  <strong>$radius_handle</strong>  The RADIUS resource.
  <info>int</info>       <strong>$vendor</strong>         The vendor ID.
  <info>int</info>       <strong>$type</strong>           The attribute type.
  <info>string</info>    <strong>$addr</strong>           文字列形式の IPv4 アドレス。 <return>10.0.0.1</return> など。
  <info></info>          <strong>$options</strong>        A bitmask of the attribute options. The available options include
                            <info>RADIUS_OPTION_TAGGED</info> and <info>RADIUS_OPTION_SALT</info>.
  <info></info>          <strong>$tag</strong>            The attribute tag. This parameter is ignored unless the
                            <info>RADIUS_OPTION_TAGGED</info> option is set.

<comment>Return:</comment>
  <info>bool</info>  成功した場合に <info>true</info> を、失敗した場合に <info>false</info> を返します。


id: radius_put_vendor_attr
type: function
doc:
<comment>Description:</comment>
  ベンダー固有のバイナリ属性を設定する
  
  ベンダー固有のバイナリ属性を、現在の RADIUS リクエストにアタッチします。
  
  A request must be created via <strong>radius_create_request()</strong> before this function can be called.

<comment>Param:</comment>
  <info>resource</info>  <strong>$radius_handle</strong>  The RADIUS resource.
  <info>int</info>       <strong>$vendor</strong>         The vendor ID.
  <info>int</info>       <strong>$type</strong>           The attribute type.
  <info>string</info>    <strong>$value</strong>          属性の値。バイナリ文字列として扱われます。
  <info>int</info>       <strong>$options</strong>        A bitmask of the attribute options. The available options include
                            <info>RADIUS_OPTION_TAGGED</info> and <info>RADIUS_OPTION_SALT</info>.
  <info>int</info>       <strong>$tag</strong>            The attribute tag. This parameter is ignored unless the
                            <info>RADIUS_OPTION_TAGGED</info> option is set.

<comment>Return:</comment>
  <info>bool</info>  成功した場合に <info>true</info> を、失敗した場合に <info>false</info> を返します。

<comment>See Also:</comment>
   * <strong>radius_get_vendor_attr()</strong>


id: radius_put_vendor_int
type: function
doc:
<comment>Description:</comment>
  ベンダー固有の整数属性を設定する
  
  ベンダー固有の整数属性を、現在の RADIUS リクエストにアタッチします。
  
  A request must be created via <strong>radius_create_request()</strong> before this function can be called.

<comment>Param:</comment>
  <info>resource</info>  <strong>$radius_handle</strong>  The RADIUS resource.
  <info>int</info>       <strong>$vendor</strong>         The vendor ID.
  <info>int</info>       <strong>$type</strong>           The attribute type.
  <info>int</info>       <strong>$value</strong>          属性の値。
  <info>int</info>       <strong>$options</strong>        A bitmask of the attribute options. The available options include
                            <info>RADIUS_OPTION_TAGGED</info> and <info>RADIUS_OPTION_SALT</info>.
  <info>int</info>       <strong>$tag</strong>            The attribute tag. This parameter is ignored unless the
                            <info>RADIUS_OPTION_TAGGED</info> option is set.

<comment>Return:</comment>
  <info>bool</info>  成功した場合に <info>true</info> を、失敗した場合に <info>false</info> を返します。

<comment>See Also:</comment>
   * <strong>radius_put_vendor_string()</strong>


id: radius_put_vendor_string
type: function
doc:
<comment>Description:</comment>
  ベンダー固有の文字列属性を設定する
  
  ベンダー固有の文字列属性を、現在の RADIUS リクエストにアタッチします。 一般に、文字列属性をアタッ
  チするには <strong>radius_put_vendor_attr()</strong> のほうがより便利です。 というのも、こちらのほうはバイナリセー
  フだからです。
  
  A request must be created via <strong>radius_create_request()</strong> before this function can be called.

<comment>Param:</comment>
  <info>resource</info>  <strong>$radius_handle</strong>  The RADIUS resource.
  <info>int</info>       <strong>$vendor</strong>         The vendor ID.
  <info>int</info>       <strong>$type</strong>           The attribute type.
  <info>string</info>    <strong>$value</strong>          属性の値。 これはヌル終端であることが期待されています。つまり、このパラ
                            メータはバイナリセーフではないということです。
  <info>int</info>       <strong>$options</strong>        A bitmask of the attribute options. The available options include
                            <info>RADIUS_OPTION_TAGGED</info> and <info>RADIUS_OPTION_SALT</info>.
  <info>int</info>       <strong>$tag</strong>            The attribute tag. This parameter is ignored unless the
                            <info>RADIUS_OPTION_TAGGED</info> option is set.

<comment>Return:</comment>
  <info>bool</info>  成功した場合に <info>true</info> を、失敗した場合に <info>false</info> を返します。

<comment>See Also:</comment>
   * <strong>radius_put_vendor_int()</strong>


id: radius_request_authenticator
type: function
doc:
<comment>Description:</comment>
  リクエスト認証子を返す
  
  パスワードや暗号化キーのような加工されたデータを復元する際には リクエスト認証子が必要となります。

<comment>Param:</comment>
  <info>resource</info>  <strong>$radius_handle</strong>  The RADIUS resource.

<comment>Return:</comment>
  <info>string</info>  リクエスト認証子を文字列で返します。エラー時には <info>false</info> を返します。

<comment>See Also:</comment>
   * <strong>radius_demangle()</strong>


id: radius_salt_encrypt_attr
type: function
doc:
<comment>Description:</comment>
  Salt-encrypts a value
  
  Applies the RADIUS salt-encryption algorithm to the given value.
  
  In general, this is achieved automatically by providing the <info>RADIUS_OPTION_SALT</info> option to an
  attribute setter function, but this function can be used if low-level request construction is
  required.

<comment>Param:</comment>
  <info>string</info>  <strong>$data</strong>  The data to be salt-encrypted.

<comment>Return:</comment>
  <info>string|false</info>  Returns the salt-encrypted data 失敗した場合に <info>false</info> を返します.

<comment>See Also:</comment>
   * <strong>radius_put_addr()</strong>
   * <strong>radius_put_attr()</strong>
   * <strong>radius_put_int()</strong>
   * <strong>radius_put_string()</strong>


id: radius_send_request
type: function
doc:
<comment>Description:</comment>
  リクエストを送信し、応答を待つ
  
  Radius リクエストを作成した後は、 <strong>radius_send_request()</strong> でそれを送信します。
  
  <strong>radius_send_request()</strong> 関数は、リクエストを送信して 応答を待ちます。定義されているサーバー間で、必
  要に応じてラウンドロビン 形式で再試行します。

<comment>Param:</comment>
  <info>resource</info>  <strong>$radius_handle</strong>  The RADIUS resource.

<comment>Return:</comment>
  <info>int</info>  有効な応答を受信したら、<strong>radius_send_request()</strong> は応答の型を示す Radius コードを返します。一般
       的なコードは <info>RADIUS_ACCESS_ACCEPT</info>、 <info>RADIUS_ACCESS_REJECT</info> あるいは <info>RADIUS_ACCESS_CHALLENGE</info> で
       す。 有効な応答を受信できなかった場合は、 <strong>radius_send_request()</strong> は <info>false</info> を返します。

<comment>See Also:</comment>
   * <strong>radius_create_request()</strong>


id: radius_server_secret
type: function
doc:
<comment>Description:</comment>
  共有秘密鍵を返す
  
  パスワードや暗号化キーのような加工されたデータを復元する際の SALT として、共有秘密鍵が必要となりま
  す。

<comment>Param:</comment>
  <info>resource</info>  <strong>$radius_handle</strong>  The RADIUS resource.

<comment>Return:</comment>
  <info>string</info>  サーバーの共有秘密鍵を文字列で返します。エラー時には <info>false</info> を返します。


id: radius_strerror
type: function
doc:
<comment>Description:</comment>
  エラーメッセージを返す
  
  Radius 関数が失敗した場合にはエラーメッセージが記録されます。 この関数により、エラーメッセージを取
  得することが可能となります。

<comment>Param:</comment>
  <info>resource</info>  <strong>$radius_handle</strong>  The RADIUS resource.

<comment>Return:</comment>
  <info>string</info>  失敗した radius 関数からのエラーメッセージを文字列で返します。


id: rand
type: function
doc:
<comment>Description:</comment>
  乱数を生成する
  
  オプションの引数 <strong>$min</strong>,<strong>$max</strong> を省略してコールした場合、<strong>rand()</strong> は 0 と <strong>getrandmax()</strong> の間の擬似乱数(整
  数)を返します。  例えば、5 から 15 まで（両端を含む）の乱数を得たい場合、 <return>rand(5, 15)</return> とします。
  
  この関数が生成する値は、暗号学的にセキュアではありません。そのため、これを暗号や、戻り値を推測でき
  ないことが必須の値として使っては いけません。
  
  暗号学的にセキュアな乱数が必要な場合は、<class>Random\Randomizer</class> を <class>Random\Engine\Secure</class> と一緒に使いま
  しょう。簡単なユースケースの場合、<strong>random_int()</strong> と <strong>random_bytes()</strong> 関数が、オペレーティングシステム
  の CSPRNG を使った、 便利で安全な API を提供します。
  
  （Windows のような）いくつかのプラットフォームでは、<strong>getrandmax()</strong> は 32767 と小さな値となっていま
  す。 32767 より広い範囲にしたい場合、 <strong>$min</strong> および <strong>$max</strong> を指定することで、 これより大きな範囲の乱数
  を生成することができます。 もしくは、 <strong>mt_rand()</strong> をかわりに使用してみてください。
  
  PHP 7.1.0 以降、<strong>rand()</strong> は、 <strong>mt_rand()</strong> と同じ乱数生成器を使います。 下位互換性を保持するために、
  <strong>mt_rand()</strong> は <info>false</info> を返すのと対照的に、<strong>rand()</strong> は <strong>$max</strong> が <strong>$min</strong> よりも小さいことを許します。

<comment>Param:</comment>
  <info>int</info>  <strong>$min</strong>  返す値の最小値 (デフォルトは 0)。
  <info>int</info>  <strong>$max</strong>  返す値の最大値 (デフォルトは <strong>getrandmax()</strong>)。

<comment>Return:</comment>
  <info>int</info>  <strong>$min</strong> (あるいは 0) から <strong>$max</strong> (あるいは <strong>getrandmax()</strong>、それぞれ端点を含む) までの間の疑似乱数値
       を返します。

<comment>See Also:</comment>
   * <strong>srand()</strong>
   * <strong>getrandmax()</strong>
   * <strong>mt_rand()</strong>
   * <strong>random_int()</strong>
   * <strong>random_bytes()</strong>


id: random_bytes
type: function
doc:
<comment>Description:</comment>
  暗号学的にセキュアな、ランダムなバイト列を生成する
  
  等確率に選ばれるランダムなバイト列を含む、指定された長さ <strong>$length</strong> の文字列を生成します。
  
  返されるバイト列は完全にランダムに選ばれるため、 結果の文字列は印字できない文字や、 不正な UTF-8
  のシーケンスとなる可能性があります。 よって、転送したり表示したりする時にはエンコードが必要かもし
  れません。
  
  この関数が生成するランダムな値は、すべてのアプリケーションに対して適切です。 たとえば暗号化キーの
  ような、長期間使うシークレットが挙げられます。
  
  この関数が使う不規則性のソースは、優先度順に以下のとおりです:
  
  Linux: getrandom(), /dev/urandom
  
  FreeBSD &gt;= 12 (PHP &gt;= 7.3): getrandom(), /dev/urandom
  
  Windows (PHP &gt;= 7.2): CNG-API
  
  Windows: CryptGenRandom
  
  macOS (PHP &gt;= 8.2; &gt;= 8.1.9; &gt;= 8.0.22 CCRandomGenerateBytes がコンパイル時に利用可能な場
  合): CCRandomGenerateBytes()
  
  macOS (PHP &gt;= 8.1; &gt;= 8.0.2): arc4random_buf(), /dev/urandom
  
  NetBSD &gt;= 7 (PHP &gt;= 7.1; &gt;= 7.0.1): arc4random_buf(), /dev/urandom
  
  OpenBSD &gt;= 5.5 (PHP &gt;= 7.1; &gt;= 7.0.1): arc4random_buf(), /dev/urandom
  
  DragonflyBSD (PHP &gt;= 8.1): getrandom(), /dev/urandom
  
  Solaris (PHP &gt;= 8.1): getrandom(), /dev/urandom
  
  上記にあてはまらないオペレーティングシステムやPHP のバージョンの場合: /dev/urandom
  
  どの不規則性のソースも利用できなかったり、 すべてのソースがランダムな値を生成できなかった場合、
  <class>Random\RandomException</class> がスローされます。
  
  この関数は PHP 7.0 で追加されたものですが、PHP 5.2 から 5.6 までのバージョンで使える ユーザーラン
  ドの実装 も公開されています。

<comment>Param:</comment>
  <info>int</info>  <strong>$length</strong>  返すべきランダムな文字列の長さをバイト単位で指定します。 <return>1</return> 以上でなければなりませ
                ん。

<comment>Return:</comment>
  <info>string</info>  暗号学的にセキュアなランダムなバイト列を含んだ文字列を返します。

<comment>See Also:</comment>
   * <strong>Random\Randomizer::getBytes()</strong>
   * <strong>random_int()</strong>
   * <strong>bin2hex()</strong>
   * <strong>base64_encode()</strong>


id: random_int
type: function
doc:
<comment>Description:</comment>
  暗号学的にセキュアな方法で、等確率に出る整数を取得する
  
  指定された最小値と最大値の区間から、 等確率に選ばれるランダムな整数を生成します。
  
  この関数が生成するランダムな値は、すべてのアプリケーションに対して適切です。 たとえば暗号化キーの
  ような、長期間使うシークレットが挙げられます。
  
  この関数が使う不規則性のソースは、優先度順に以下のとおりです:
  
  Linux: getrandom(), /dev/urandom
  
  FreeBSD &gt;= 12 (PHP &gt;= 7.3): getrandom(), /dev/urandom
  
  Windows (PHP &gt;= 7.2): CNG-API
  
  Windows: CryptGenRandom
  
  macOS (PHP &gt;= 8.2; &gt;= 8.1.9; &gt;= 8.0.22 CCRandomGenerateBytes がコンパイル時に利用可能な場
  合): CCRandomGenerateBytes()
  
  macOS (PHP &gt;= 8.1; &gt;= 8.0.2): arc4random_buf(), /dev/urandom
  
  NetBSD &gt;= 7 (PHP &gt;= 7.1; &gt;= 7.0.1): arc4random_buf(), /dev/urandom
  
  OpenBSD &gt;= 5.5 (PHP &gt;= 7.1; &gt;= 7.0.1): arc4random_buf(), /dev/urandom
  
  DragonflyBSD (PHP &gt;= 8.1): getrandom(), /dev/urandom
  
  Solaris (PHP &gt;= 8.1): getrandom(), /dev/urandom
  
  上記にあてはまらないオペレーティングシステムやPHP のバージョンの場合: /dev/urandom
  
  どの不規則性のソースも利用できなかったり、 すべてのソースがランダムな値を生成できなかった場合、
  <class>Random\RandomException</class> がスローされます。
  
  この関数は PHP 7.0 で追加されたものですが、PHP 5.2 から 5.6 までのバージョンで使える ユーザーラン
  ドの実装 も公開されています。

<comment>Param:</comment>
  <info>int</info>  <strong>$min</strong>  返される最小値。
  <info>int</info>  <strong>$max</strong>  返される最大値。

<comment>Return:</comment>
  <info>int</info>  <strong>$min</strong> と <strong>$max</strong> の範囲で、 暗号学的にセキュアな方法で、 閉区間 [<strong>$min</strong>, <strong>$max</strong>] の中から等確率に出る
       よう選ばれた整数値を返します。 <strong>$min</strong> と <strong>$max</strong>　 も返される値に含みます。

<comment>See Also:</comment>
   * Random\Randomizer::getInt
   * <strong>random_bytes()</strong>


id: range
type: function
doc:
<comment>Description:</comment>
  ある範囲の要素を含む配列を作成する
  
  ある範囲の要素を含む配列を作成します。
  
  <strong>$start</strong> と <strong>$end</strong> が両方文字列で、かつ <strong>$step</strong> が整数の場合、 生成される配列はバイト列のシーケンスにな
  ります。 そうでない場合、生成される配列は数値のシーケンスになります。
  
  <strong>$start</strong> が <strong>$end</strong> よりも小さい場合、シーケンスは増加します。 そうでない場合、シーケンスは減少します。

<comment>Param:</comment>
  <info>string|int|float</info>  <strong>$start</strong>  シーケンスの最初の値。
  <info>string|int|float</info>  <strong>$end</strong>    シーケンスの最後としてあり得る値。
  <info>int|float</info>         <strong>$step</strong>   <strong>$step</strong> は、生成されるシーケンスの個別の値が どれくらい離れているかを指定
                            します。
                            
                            シーケンスが減少する場合、<strong>$step</strong> は負の値を指定しても構いません。
                            
                            <strong>$step</strong> が 端数のない <info>float</info>  の場合、整数として解釈されます。

<comment>Return:</comment>
  <info>array</info>  要素のシーケンスを配列として返します。 最初の要素は <strong>$start</strong> になり、 <strong>$end</strong> になるまで続きま
         す。 シーケンスのそれぞれの値は、<strong>$step</strong> だけ離れています。
         
         返される配列の最後の要素は、 <strong>$end</strong> または シーケンスの直前の要素になります。 どちらになるか
         は、<strong>$step</strong> の値によります。
         
         <strong>$start</strong> と <strong>$end</strong> が両方文字列で、かつ <strong>$step</strong> が整数の場合、 生成される配列は、バイト列のシーケ
         ンスになります。 一般的にはラテン文字の ASCII 文字からなるシーケンスです。
         
         <strong>$start</strong>, <strong>$end</strong>, <strong>$step</strong> のうち少なくともひとつが <info>float</info> の場合、 生成される配列は <info>float</info> のシーケ
         ンスになります。
         
         その他の場合、生成される配列は整数のシーケンスになります。

<comment>See Also:</comment>
   * <strong>shuffle()</strong>
   * <strong>array_fill()</strong>
   * foreach


id: rar_wrapper_cache_stats
type: function
doc:
<comment>Description:</comment>
  URL ラッパーのキャッシュのヒット数
  
  この関数は、
  現在のところ詳細な情報はありません。引数のリストのみが
  記述されています。

<comment>Return:</comment>
  <info>string</info>  


id: rawurldecode
type: function
doc:
<comment>Description:</comment>
  URL エンコードされた文字列をデコードする
  
  文字列の中にパーセント記号 (<return>%</return>) に続いて 2 つの 16 進数があるような表現形式を、文字定数に置き換えて
  返します。

<comment>Param:</comment>
  <info>string</info>  <strong>$string</strong>  デコードする URL。

<comment>Return:</comment>
  <info>string</info>  デコードされた URL を文字列で返します。

<comment>See Also:</comment>
   * <strong>rawurlencode()</strong>
   * <strong>urldecode()</strong>
   * <strong>urlencode()</strong>
   * RFC 3986


id: rawurlencode
type: function
doc:
<comment>Description:</comment>
  RFC 3986 に基づき URL エンコードを行う
  
  指定した文字列を RFC 3986 にもとづいてエンコードします。

<comment>Param:</comment>
  <info>string</info>  <strong>$string</strong>  エンコードする URL。

<comment>Return:</comment>
  <info>string</info>  <return>-_.~</return> を除くすべての非アルファベット文字をパーセント 記号 (<return>%</return>)に続いて 2 つの 16 進数がある
          表現形式に 置き換えた文字列を返します。これは、文字定数が特殊な URL デリミタと して解釈さ
          れたり、URL デリミタが(いくつかの電子メールシステムのような) 転送メディアにより文字変換さ
          れて失われてしまったりすることが ないように、RFC 3986 で定められたエンコーディング方法で
          す。

<comment>See Also:</comment>
   * <strong>rawurldecode()</strong>
   * <strong>urldecode()</strong>
   * <strong>urlencode()</strong>
   * RFC 3986


id: read_exif_data
type: function
doc:
<comment>Description:</comment>
  のエイリアス exif_read_data
  
  この関数は次の関数のエイリアスです。 <strong>exif_read_data()</strong>.


id: readdir
type: function
doc:
<comment>Description:</comment>
  ディレクトリハンドルからエントリを読み込む
  
  ディレクトリから次のエントリの名前を返します。 エントリ名はファイルシステム上に格納されている順番
  で返されます。

<comment>Param:</comment>
  <info>resource|null</info>  <strong>$dir_handle</strong>  <strong>opendir()</strong> が事前にオープンした ディレクトリハンドル<info>リソース</info>。 ディレク
                              トリハンドルを指定しなかった場合は、 <strong>opendir()</strong> が最後にオープンしたも
                              のを使用します。

<comment>Return:</comment>
  <info>string|false</info>  成功した場合にエントリ名、失敗した場合に <info>false</info> を返します。
                
                この関数は論理値
                <info>false</info> を返す可能性がありますが、<info>false</info> として評価される値を返す可能性もあります。
                詳細については 論理値の
                セクションを参照してください。この関数の返り値を調べるには
                ===演算子 を
                使用してください。

<comment>See Also:</comment>
   * <strong>is_dir()</strong>
   * <strong>glob()</strong>
   * <strong>opendir()</strong>
   * <strong>scandir()</strong>


id: readfile
type: function
doc:
<comment>Description:</comment>
  ファイルを出力する
  
  ファイルを読んで標準出力に書き出します。

<comment>Param:</comment>
  <info>string</info>         <strong>$filename</strong>          読み込もうとするファイルの名前。
  <info>bool</info>           <strong>$use_include_path</strong>  オプションの2番目の引数を使用して、これに<info>true</info>を設定することによ
                                    り、 include_path のファイルの検索も行うことができます。
  <info>resource|null</info>  <strong>$context</strong>           ストリームコンテキストリソース

<comment>Return:</comment>
  <info>int|false</info>  ファイルから読み込んだバイト数を返します。 失敗した場合に <info>false</info> を返します

<comment>See Also:</comment>
   * <strong>fpassthru()</strong>
   * <strong>file()</strong>
   * <strong>fopen()</strong>
   * <strong>include()</strong>
   * <strong>require()</strong>
   * <strong>virtual()</strong>
   * <strong>file_get_contents()</strong>
   * 


id: readgzfile
type: function
doc:
<comment>Description:</comment>
  gz ファイルを出力する
  
  ファイルを読み込み、解凍し、標準出力に書き込みます。
  
  <strong>readgzfile()</strong>は、gzip フォーマットでないファイルの読込にも使用可能です。この場合、 <strong>readgzfile()</strong> は
  ファイルを解凍せずに直接読込みます。

<comment>Param:</comment>
  <info>string</info>  <strong>$filename</strong>          ファイル名を指定します。このファイルはファイルシステムからオープンさ
                             れ、 内容は標準出力に書き込まれます。
  <info>int</info>     <strong>$use_include_path</strong>  include_path にあるファイルも検索したい場合、このオプションパラメータを
                             <return>1</return> に設定してください。

<comment>Return:</comment>
  <info>int|false</info>  成功時は、ファイルから読み込んだ (解凍された) データのバイト数を返します。 失敗した場合
             に <info>false</info> を返します

<comment>See Also:</comment>
   * <strong>gzpassthru()</strong>
   * <strong>gzfile()</strong>
   * <strong>gzopen()</strong>


id: readline
type: function
doc:
<comment>Description:</comment>
  一行読み込む
  
  ユーザーからの入力を一行読み込みます。 この行を <strong>readline_add_history()</strong> を用いてヒストリに追加する
  必要があります。

<comment>Param:</comment>
  <info>string|null</info>  <strong>$prompt</strong>  ユーザーに示す確認文字列を指定します。

<comment>Return:</comment>
  <info>string|false</info>  ユーザーから取得した文字列を一つだけ返します。 戻り値の最後の改行は取り除かれます。
                読み取るデータが残っていない場合、<info>false</info> を返します。


id: readline_add_history
type: function
doc:
<comment>Description:</comment>
  ヒストリに 1 行追加する
  
  この関数は、コマンドラインヒストリに 1 行追加します。

<comment>Param:</comment>
  <info>string</info>  <strong>$prompt</strong>  ヒストリに追加する行。

<comment>Return:</comment>
  <info>bool</info>  成功した場合に <info>true</info> を、失敗した場合に <info>false</info> を返します。


id: readline_callback_handler_install
type: function
doc:
<comment>Description:</comment>
  readline コールバックインターフェイスと端末を初期化し、
     プロンプトを表示して結果をすぐに返す
    
  
  readline コールバックインターフェイスを設定し、プロンプト <strong>$prompt</strong> を表示して入力を受け取ります。
  コールバック関数 <strong>$callback</strong> はひとつのパラメータを とり、そこにはユーザーの入力内容が格納されます。
  一度登録したコールバック インターフェイスを削除せずもういちどこの関数をコールした場合、もとの イン
  ターフェイスは自動的に上書きされます。
  
  コールバック機能は <strong>stream_select()</strong> と組み合わせると 有用です。これは <strong>readline()</strong> とは異なり、 IO と
  ユーザーの入力を交互に取り扱います。

<comment>Param:</comment>
  <info>string</info>    <strong>$prompt</strong>    確認メッセージ。
  <info>callable</info>  <strong>$callback</strong>  <strong>$callback</strong> 関数が受け取るパラメータはひとつで、 ユーザーから返された入力です。

<comment>Return:</comment>
  <info>bool</info>  成功した場合に <info>true</info> を、失敗した場合に <info>false</info> を返します。

<comment>See Also:</comment>
   * <strong>readline_callback_handler_remove()</strong>
   * <strong>readline_callback_read_char()</strong>
   * <strong>stream_select()</strong>


id: readline_callback_handler_remove
type: function
doc:
<comment>Description:</comment>
  インストールされたハンドラを削除し、端末の設定をもとに戻す
  
  インストールされたハンドラを削除し、端末の設定をもとに戻します。

<comment>Return:</comment>
  <info>bool</info>  インストールされたコールバックが削除できた場合に <info>true</info>、 削除するハンドラが見つからなかった場
        合に <info>false</info> を返します。

<comment>See Also:</comment>
   * <strong>readline_callback_handler_install()</strong>
   * <strong>readline_callback_read_char()</strong>


id: readline_callback_read_char
type: function
doc:
<comment>Description:</comment>
  文字を読み込み、改行を受け取ると readline コールバックインターフェイスに通知する
  
  ユーザーが入力した文字を読み込みます。改行を受け取ると、この関数は
  <strong>readline_callback_handler_install()</strong> で インストールされた readline コールバックインターフェイスに
  対して 入力待ちを通知します。

<comment>Return:</comment>
  <info>void</info>  値を返しません。

<comment>See Also:</comment>
   * <strong>readline_callback_handler_install()</strong>
   * <strong>readline_callback_handler_remove()</strong>


id: readline_clear_history
type: function
doc:
<comment>Description:</comment>
  ヒストリをクリアする
  
  この関数はコマンドラインヒストリ全体をクリアします。

<comment>Return:</comment>
  <info>bool</info>  成功した場合に <info>true</info> を、失敗した場合に <info>false</info> を返します。


id: readline_completion_function
type: function
doc:
<comment>Description:</comment>
  補完関数を登録する
  
  この関数は補完用の関数を登録します。 これは、Bash を使用している際に、タブキーを 押して得られるの
  と同様の機能です。

<comment>Param:</comment>
  <info>callable</info>  <strong>$callback</strong>  コマンドラインの一部を入力とし、 マッチする可能性がある文字列の配列を返す 既
                       存の関数の名前を指定する必要があります。

<comment>Return:</comment>
  <info>bool</info>  成功した場合に <info>true</info> を、失敗した場合に <info>false</info> を返します。


id: readline_info
type: function
doc:
<comment>Description:</comment>
  種々の readline の内部変数を取得/設定する
  
  さまざまな readline の内部変数の取得あるいは設定を行います。

<comment>Param:</comment>
  <info>string|null</info>           <strong>$var_name</strong>  変数の名前。
  <info>int|string|bool|null</info>  <strong>$value</strong>     指定した場合は、これがその設定の新しい値となります。

<comment>Return:</comment>
  <info>mixed</info>  パラメータを指定しないでコールした場合、この関数は readline が使用する すべての設定の値を配
         列で返します。要素の添字は次のようになります。 <return>done</return>, <return>end</return>, <return>erase_empty_line</return>,
         <return>library_version</return>, <return>line_buffer</return>, <return>mark</return>, <return>pending_input</return>, <return>point</return>, <return>prompt</return>, <return>readline_name</return>,
         <return>terminal_name</return>。 返される配列は、readline 拡張モジュールをビルドするのに使われるライブラリが
         サポートする要素だけを含みます。
         
         ひとつあるいはふたつのパラメータを指定してコールした場合は、 元の値が返されます。


id: readline_list_history
type: function
doc:
<comment>Description:</comment>
  ヒストリを一覧表示する
  
  コマンドラインヒストリ全体を取得します。

<comment>Return:</comment>
  <info>array</info>  コマンドラインヒストリ全体の配列を返します。 各要素にはゼロから始まる整数の添字が付加されて
         います。


id: readline_on_new_line
type: function
doc:
<comment>Description:</comment>
  カーソルが新しい行に移動したことを readline に通知する
  
  readline に、カーソルが新しい行に移動したことを通知します。

<comment>Return:</comment>
  <info>void</info>  値を返しません。


id: readline_read_history
type: function
doc:
<comment>Description:</comment>
  ヒストリを読み込む
  
  この関数は、コマンドヒストリをファイルから読み込みます。

<comment>Param:</comment>
  <info>string|null</info>  <strong>$filename</strong>  コマンドヒストリを含むファイルへのパス。

<comment>Return:</comment>
  <info>bool</info>  成功した場合に <info>true</info> を、失敗した場合に <info>false</info> を返します。


id: readline_redisplay
type: function
doc:
<comment>Description:</comment>
  画面を再描画する
  
  画面の再描画を readline に依頼します。

<comment>Return:</comment>
  <info>void</info>  値を返しません。


id: readline_write_history
type: function
doc:
<comment>Description:</comment>
  ヒストリを書きこむ
  
  この関数はコマンドヒストリをファイルに書き込みます。

<comment>Param:</comment>
  <info>string|null</info>  <strong>$filename</strong>  保存するファイルへのパス。

<comment>Return:</comment>
  <info>bool</info>  成功した場合に <info>true</info> を、失敗した場合に <info>false</info> を返します。


id: readlink
type: function
doc:
<comment>Description:</comment>
  シンボリックリンク先を返す
  
  <strong>readlink()</strong> は同名の C 関数と同じ動作をします。

<comment>Param:</comment>
  <info>string</info>  <strong>$path</strong>  シンボリックリンクのパス。

<comment>Return:</comment>
  <info>string|false</info>  シンボリックリンク・パスの内容を返します。エラーの場合は <info>false</info> を返します。
                
                この関数は、<strong>$path</strong> がシンボリックリンクでない場合は失敗します。但し、Windows を除きま
                す。 Windows では、正規化されたパスを返します。

<comment>See Also:</comment>
   * <strong>is_link()</strong>
   * <strong>symlink()</strong>
   * <strong>linkinfo()</strong>


id: realpath
type: function
doc:
<comment>Description:</comment>
  正規化された絶対パス名を返す
  
  <strong>realpath()</strong> は、 入力 <strong>$path</strong> のシンボリックリンクをすべて展開し、 <return>/./</return>、<return>/../</return> および <return>/</return> などの参照をす
  べて解決することにより、正規化された絶対パスを返します。

<comment>Param:</comment>
  <info>string</info>  <strong>$path</strong>  調べたいパス。
                 
                 path の指定は必須ですが、空の文字列を指定することもできます。 その場合はカレント
                 ディレクトリを指定したものとみなします。

<comment>Return:</comment>
  <info>string|false</info>  成功した場合は、正規化された絶対パス名を返します。 返されるパスはシンボリックリン
                ク、<return>/./</return> および <return>/../</return> 要素を含みません。 パスの末尾の区切り文字 (<return>\</return> や <return>/</return> など) は削除さ
                れます。
                
                <strong>realpath()</strong> は、 たとえばファイルが存在しないなどの失敗時に <info>false</info> を返します。
                
                指定した階層にあるすべてのディレクトリに対して、 実行中のスクリプトからの実行権限が
                必要です。もし権限がなければ <strong>realpath()</strong> は <info>false</info> を返します。
                
                大文字小文字を区別しないファイルシステムの場合は、<strong>realpath()</strong> が大文字小文字をどちら
                かにそろえるかもしれないし、そろえないかもしれません。
                
                <strong>realpath()</strong> 関数は、Phar の内部にあるファイルに対しては機能しません。 そのようなパス
                は、実際のパスではなく仮想パスになるからです。
                
                Windows では、ディレクトリへのシンボリックリンクとジャンクションは、ひとつ分しか展開
                されません。
                
                PHP の数値型は符号付整数であり、 多くのプラットフォームでは 32 ビットの整数を取るた
                め、 ファイルシステム関数の中には 2GB より大きなファイルについては期待とは違う値を返
                すものがあります。

<comment>See Also:</comment>
   * <strong>basename()</strong>
   * <strong>dirname()</strong>
   * <strong>pathinfo()</strong>


id: realpath_cache_get
type: function
doc:
<comment>Description:</comment>
  realpath キャッシュ・エントリーを取得
  
  realpath キャッシュ内容を取得します。

<comment>Return:</comment>
  <info>array</info>  realpath キャッシュ・エントリーの配列を返します。キーは元のパス・エントリーで、 値はデータ
         項目の配列です。それには、解決されたパス、失効日、キャッシュに保持されるその他のオプション
         を含みます。

<comment>See Also:</comment>
   * <strong>realpath_cache_size()</strong>


id: realpath_cache_size
type: function
doc:
<comment>Description:</comment>
  realpath キャッシュサイズを取得
  
  realpath キャッシュで使用されるメモリー量を取得します。

<comment>Return:</comment>
  <info>int</info>  realpath キャッシュが使用中のメモリ量を返します。

<comment>See Also:</comment>
   * <strong>realpath_cache_get()</strong>
   * 
     設定オプション realpath_cache_size
    


id: recode
type: function
doc:
<comment>Description:</comment>
  recode_string のエイリアス
  
  この関数は次の関数のエイリアスです。 <strong>recode_string()</strong>.


id: recode_file
type: function
doc:
<comment>Description:</comment>
  コード変換指令に基づきファイルからファイルにコード変換する
  
  コード変換指令 <strong>$request</strong> に基づきファイルハンドル <strong>$input</strong> が指すファイルをファイルハンドル <strong>$output</strong>
  が指すファイルにコード変換します。

<comment>Param:</comment>
  <info>string</info>    <strong>$request</strong>  変換指令の型。
  <info>resource</info>  <strong>$input</strong>    入力として使用する ローカルファイルハンドルリソース。
  <info>resource</info>  <strong>$output</strong>   出力として使用する ローカルファイルハンドルリソース。

<comment>Return:</comment>
  <info>bool</info>  応じることができない場合に <info>false</info>、それ以外の場合に <info>true</info> を返します。

<comment>See Also:</comment>
   * <strong>fopen()</strong>


id: recode_string
type: function
doc:
<comment>Description:</comment>
  コード変換指令に基づき文字列のコードを変換する
  
  コード変換指令 <strong>$request</strong> に基づき文字列 <strong>$string</strong> のコードを変換します。

<comment>Param:</comment>
  <info>string</info>  <strong>$request</strong>  変換指令の型。
  <info>string</info>  <strong>$string</strong>   変換する文字列。

<comment>Return:</comment>
  <info>string</info>  変換後の文字列、または変換指令を実行できない場合に <info>false</info> を返します。

<comment>See Also:</comment>
   * 
     コード変換指令に関する詳細な手順に関しては、インストールされている
     GNU Recode のドキュメントも参照ください。
    
   * <strong>mb_convert_encoding()</strong>
   * UConverter::transcode
   * <strong>iconv()</strong>


id: register_shutdown_function
type: function
doc:
<comment>Description:</comment>
  シャットダウン時に実行する関数を登録する
  
  スクリプト処理が完了したとき、あるいは <strong>exit()</strong> がコールされたときに実行するコールバック関数を登録し
  ます。
  
  <strong>register_shutdown_function()</strong> は複数回コールする ことが可能で、登録された順に関数がコールされます。
  登録した関数内で <strong>exit()</strong> をコールした場合、 処理はそこで終了してその他のシャットダウン関数はコール
  されません。
  
  シャットダウン関数は、 別のシャットダウン関数をキューの最後に追加するために、
  <strong>register_shutdown_function()</strong> そのものをコールしても構いません。

<comment>Param:</comment>
  <info>callable</info>  <strong>$callback</strong>  登録するコールバック。
                       
                       シャットダウン時のコールバックは、リクエストの一部として実行されます。 した
                       がって、コールバック関数からも出力を送信できるし、出力バッファにもアクセスで
                       きます。
  <info>mixed</info>     <strong>$args</strong>      シャットダウン関数にパラメータを渡すには、ここで追加のパラメータを渡します。

<comment>Return:</comment>
  <info>void</info>  値を返しません。

<comment>See Also:</comment>
   * auto_append_file
   * <strong>exit()</strong>
   * <strong>fastcgi_finish_request()</strong>
   * 接続処理


id: register_tick_function
type: function
doc:
<comment>Description:</comment>
  各 tick で実行する関数を登録する
  
  tick がコールされた際に実行される <strong>$callback</strong> という名前の関数を登録します。

<comment>Param:</comment>
  <info>callable</info>  <strong>$callback</strong>  登録する関数
  <info>mixed</info>     <strong>$args</strong>      

<comment>Return:</comment>
  <info>bool</info>  成功した場合に <info>true</info> を、失敗した場合に <info>false</info> を返します。

<comment>See Also:</comment>
   * declare
   * <strong>unregister_tick_function()</strong>


id: rename
type: function
doc:
<comment>Description:</comment>
  ファイルをリネームする
  
  <strong>$from</strong> を <strong>$to</strong> にリネームし、必要ならディレクトリを移動しようと試みます。 ファイル名の変更かつ <strong>$to</strong>
  が存在する場合、上書きされます。 ディレクトリ名の変更かつ <strong>$to</strong> が存在する場合、 この関数は警告を発
  します。

<comment>Param:</comment>
  <info>string</info>         <strong>$from</strong>     変更前の名前。
                           
                           <strong>$from</strong> で使用されるラッパーは、 <strong>$to</strong> で使用するラッパーと適合 している必要
                           があります 。
  <info>string</info>         <strong>$to</strong>       変更後の名前。  Windows では、<strong>$to</strong> が既に存在する場合、 そのファイルは書き
                           込み可能でなければなりません。 書き込み可能でない場合、<strong>rename()</strong> は失敗
                           し、 <info>E_WARNING</info> が発生します。
                           
                           Windows では、<strong>$to</strong> が既に存在する場合、 そのファイルは書き込み可能でなけれ
                           ばなりません。 書き込み可能でない場合、<strong>rename()</strong> は失敗し、 <info>E_WARNING</info> が発
                           生します。
  <info>resource|null</info>  <strong>$context</strong>  ストリームコンテキストリソース

<comment>Return:</comment>
  <info>bool</info>  成功した場合に <info>true</info> を、失敗した場合に <info>false</info> を返します。

<comment>See Also:</comment>
   * <strong>copy()</strong>
   * <strong>unlink()</strong>
   * <strong>move_uploaded_file()</strong>


id: reset
type: function
doc:
<comment>Description:</comment>
  配列の内部ポインタを先頭の要素にセットする
  
  <strong>reset()</strong> は、<strong>$array</strong> の内部ポインタの先頭の要素に戻し、配列の最初の要素の値を返します。

<comment>Param:</comment>
  <info>array|object</info>  <strong>$array</strong>  入力の配列。

<comment>Return:</comment>
  <info>mixed</info>  配列の最初の要素の値を返します。 配列が空の場合 <info>false</info> を返します。
         
         この関数は論理値
         <info>false</info> を返す可能性がありますが、<info>false</info> として評価される値を返す可能性もあります。
         詳細については 論理値の
         セクションを参照してください。この関数の返り値を調べるには
         ===演算子 を
         使用してください。

<comment>See Also:</comment>
   * <strong>current()</strong>
   * <strong>each()</strong>
   * <strong>end()</strong>
   * <strong>next()</strong>
   * <strong>prev()</strong>
   * <strong>array_key_first()</strong>


id: restore_error_handler
type: function
doc:
<comment>Description:</comment>
  以前のエラーハンドラ関数を回復する
  
  <strong>set_error_handler()</strong> を使用してエラーハンドラ関数を 変更した後、元のエラーハンドラ(組込またはユー
  ザー定義関数)に戻すために 使用されます。

<comment>Return:</comment>
  <info>true</info>  常に <info>true</info> を返します。

<comment>See Also:</comment>
   * <strong>error_reporting()</strong>
   * <strong>set_error_handler()</strong>
   * <strong>restore_exception_handler()</strong>
   * <strong>trigger_error()</strong>


id: restore_exception_handler
type: function
doc:
<comment>Description:</comment>
  以前の例外ハンドラ関数を回復する
    
  
  <strong>set_exception_handler()</strong> を使用して例外ハンドラ関数を 変更した後、元の例外ハンドラ(組込またはユー
  ザー定義関数)に戻すために 使用されます。

<comment>Return:</comment>
  <info>true</info>  常に <info>true</info> を返します。

<comment>See Also:</comment>
   * <strong>set_exception_handler()</strong>
   * <strong>set_error_handler()</strong>
   * <strong>restore_error_handler()</strong>
   * <strong>error_reporting()</strong>


id: restore_include_path
type: function
doc:
<comment>Description:</comment>
  include_path 設定オプションの値を元に戻す
  
  include_path 設定値を php.ini でセットされたオリジナルの設定に戻します。

<comment>Return:</comment>
  <info>void</info>  値を返しません。

<comment>See Also:</comment>
   * <strong>ini_restore()</strong>
   * <strong>get_include_path()</strong>
   * <strong>set_include_path()</strong>
   * <strong>include()</strong>


id: rewind
type: function
doc:
<comment>Description:</comment>
  ファイルポインタの位置を先頭に戻す
  
  <strong>$stream</strong> のファイル位置指示子を、 ファイルストリームの先頭にセットします。
  
  追記モード ("a" もしくは "a+") でファイルをオープンした場合、 ファイルのポインターの位置とは無関係
  に、 ファイルに書き込まれるデータは常に追加されます。

<comment>Param:</comment>
  <info>resource</info>  <strong>$stream</strong>  ファイルポインタは有効なものでなければならず、 また <strong>fopen()</strong> で正常にオープンさ
                     れたファイルを指している必要があります。

<comment>Return:</comment>
  <info>bool</info>  成功した場合に <info>true</info> を、失敗した場合に <info>false</info> を返します。

<comment>See Also:</comment>
   * <strong>fread()</strong>
   * <strong>fseek()</strong>
   * <strong>ftell()</strong>
   * <strong>fwrite()</strong>


id: rewinddir
type: function
doc:
<comment>Description:</comment>
  ディレクトリハンドルを元に戻す
  
  <strong>$dir_handle</strong> で指定されたディレクトリの ストリームをディレクトリの先頭にリセットします。

<comment>Param:</comment>
  <info>resource|null</info>  <strong>$dir_handle</strong>  <strong>opendir()</strong> が事前にオープンした ディレクトリハンドル<info>リソース</info>。 ディレク
                              トリハンドルを指定しなかった場合は、 <strong>opendir()</strong> が最後にオープンしたも
                              のを使用します。

<comment>Return:</comment>
  <info>void</info>  値を返しません。


id: rmdir
type: function
doc:
<comment>Description:</comment>
  ディレクトリを削除する
  
  <strong>$directory</strong>で指定されたディレクトリを 削除しようと試みます。ディレクトリは空でなくてはならず、また
  適切なパーミッションが設定されていなければなりません。 失敗した場合は <info>E_WARNING</info> レベルのエラーが発
  生します。

<comment>Param:</comment>
  <info>string</info>         <strong>$directory</strong>  ディレクトリへのパス。
  <info>resource|null</info>  <strong>$context</strong>    ストリームコンテキストリソース

<comment>Return:</comment>
  <info>bool</info>  成功した場合に <info>true</info> を、失敗した場合に <info>false</info> を返します。

<comment>See Also:</comment>
   * <strong>is_dir()</strong>
   * <strong>mkdir()</strong>
   * <strong>unlink()</strong>


id: rnp_backend_string
type: function
doc:
<comment>Description:</comment>
  Return cryptographic backend library name

<comment>Return:</comment>
  <info>string</info>  Backend name string. Currently supported backends are "Botan" and "OpenSSL".


id: rnp_backend_version
type: function
doc:
<comment>Description:</comment>
  Return cryptographic backend library version

<comment>Return:</comment>
  <info>string</info>  Version string.


id: rnp_decrypt
type: function
doc:
<comment>Description:</comment>
  Decrypt PGP message
  
  Private keys used for decryption should be loaded into the FFI object before calling this
  function. If password encryption was used, then password provider should be set by calling
  <strong>rnp_ffi_set_pass_provider()</strong>.

<comment>Param:</comment>
  <info>RnpFFI</info>  <strong>$ffi</strong>    The FFI object returned by rnp_ffi_create.
  <info>string</info>  <strong>$input</strong>  Encrypted message.

<comment>Return:</comment>
  <info>string|false</info>  Decrypted message on success失敗した場合に <info>false</info> を返します.


id: rnp_dump_packets
type: function
doc:
<comment>Description:</comment>
  Dump OpenPGP packets stream information in humand-readable format

<comment>Param:</comment>
  <info>string</info>  <strong>$input</strong>  Input string containing OpenPGP data, either in binary or ASCII-armored format.
  <info>int</info>     <strong>$flags</strong>  See <info>RNP_DUMP_*</info> predefined constants.

<comment>Return:</comment>
  <info>string|false</info>  Text describing packet sequence失敗した場合に <info>false</info> を返します.


id: rnp_dump_packets_to_json
type: function
doc:
<comment>Description:</comment>
  Dump OpenPGP packets stream information to the JSON string

<comment>Param:</comment>
  <info>string</info>  <strong>$input</strong>  Input string containing OpenPGP data, either in binary or ASCII-armored format.
  <info>int</info>     <strong>$flags</strong>  See <info>RNP_JSON_DUMP_*</info> predefined constants.

<comment>Return:</comment>
  <info>string|false</info>  JSON string with dump失敗した場合に <info>false</info> を返します.


id: rnp_ffi_create
type: function
doc:
<comment>Description:</comment>
  Create the top-level object used for interacting with the library

<comment>Param:</comment>
  <info>string</info>  <strong>$pub_format</strong>  the format of the public keyring, RNP_KEYSTORE_GPG or other RNP_KEYSTORE_*
                       constant.
  <info>string</info>  <strong>$sec_format</strong>  the format of the secret keyring, RNP_KEYSTORE_GPG or other RNP_KEYSTORE_*
                       constant

<comment>Return:</comment>
  <info>RnpFFI|false</info>  Returns <info>RnpFFI</info> object on success失敗した場合に <info>false</info> を返します.


id: rnp_ffi_destroy
type: function
doc:
<comment>Description:</comment>
  Destroy the top-level object used for interacting with the library

<comment>Param:</comment>
  <info>RnpFFI</info>  <strong>$ffi</strong>  The FFI object returned by rnp_ffi_create.

<comment>Return:</comment>
  <info>void</info>  


id: rnp_ffi_set_pass_provider
type: function
doc:
<comment>Description:</comment>
  Set password provider callback function
  
  Sets password provider function. This function can ask for the password on a standard input (if
  PHP script is executed in a command line environment), display GUI dialog or provide password in
  any other possible ways. Requested passwords are used to encrypt or decrypt secret keys or perform
  symmetric encryption/decryption operations.

<comment>Param:</comment>
  <info>RnpFFI</info>    <strong>$ffi</strong>                The FFI object returned by rnp_ffi_create.
  <info>callable</info>  <strong>$password_callback</strong>  The function that is to be called for every password request.  It
                                has the following signature:
                                <info>bool</info>password_callback<info>string</info><strong>$key_fp</strong><info>string</info><strong>$pgp_context</strong><info>string</info>password</strong>
                                <return>$key_fp</return> - The key fingerprint, if any. Can be empty.<return>$pgp_context</return> -
                                String describing why the key is being requested.<return>$password</return> -
                                Password string reference where provided password should be stored
                                to. Callback function should return <info>true</info> if password was
                                successfully set失敗した場合に <info>false</info> を返します.

<comment>Return:</comment>
  <info>bool</info>  Returns <info>true</info> on success失敗した場合に <info>false</info> を返します.


id: rnp_import_keys
type: function
doc:
<comment>Description:</comment>
  Import keys from PHP string to the keyring and receive JSON describing new/updated keys

<comment>Param:</comment>
  <info>RnpFFI</info>  <strong>$ffi</strong>    The FFI object returned by rnp_ffi_create.
  <info>string</info>  <strong>$input</strong>  OpenPGP packets containing key(s) to be loaded. Can be either binary or ASCII
                  armored.
  <info>int</info>     <strong>$flags</strong>  See <info>RNP_LOAD_SAVE_*</info> predefined constants.

<comment>Return:</comment>
  <info>string|false</info>  JSON string with information about new and updated keys on success失敗した場合に
                <info>false</info> を返します.


id: rnp_import_signatures
type: function
doc:
<comment>Description:</comment>
  Import standalone signatures to the keyring and receive JSON describing updated keys

<comment>Param:</comment>
  <info>RnpFFI</info>  <strong>$ffi</strong>    The FFI object returned by rnp_ffi_create.
  <info>string</info>  <strong>$input</strong>  OpenPGP packets containing signatures to be imported. Can be either binary or
                  ASCII armored.
  <info>int</info>     <strong>$flags</strong>  Currently must be 0.

<comment>Return:</comment>
  <info>string|false</info>  JSON string with information about updated keys on success失敗した場合に <info>false</info> を返
                します.


id: rnp_key_export
type: function
doc:
<comment>Description:</comment>
  Export a key

<comment>Param:</comment>
  <info>RnpFFI</info>  <strong>$ffi</strong>     The FFI object returned by rnp_ffi_create.
  <info>string</info>  <strong>$key_fp</strong>  Key fingerprint.
  <info>int</info>     <strong>$flags</strong>   See <info>RNP_KEY_EXPORT_*</info> predefined constants (except <info>RNP_KEY_EXPORT_BASE64</info>).

<comment>Return:</comment>
  <info>string|false</info>  OpenPGP packets of exported key (binary or ASCII-armored) on success失敗した場合に
                <info>false</info> を返します.


id: rnp_key_export_autocrypt
type: function
doc:
<comment>Description:</comment>
  Export minimal key for autocrypt feature (just 5 packets: key, uid, signature,
     encryption subkey, signature)

<comment>Param:</comment>
  <info>RnpFFI</info>  <strong>$ffi</strong>        The FFI object returned by rnp_ffi_create.
  <info>string</info>  <strong>$key_fp</strong>     Primary key fingerprint.
  <info>string</info>  <strong>$subkey_fp</strong>  Subkey to export. Can be an empty string to pick the first suitable subkey.
  <info>string</info>  <strong>$uid</strong>        User ID to export. Can be an empty string if exported key has only one uid.
  <info>int</info>     <strong>$flags</strong>      Only <info>RNP_KEY_EXPORT_BASE64</info> is currently supported. Enabling it would export
                      base64-encoded key data instead of binary.

<comment>Return:</comment>
  <info>string|false</info>  OpenPGP packets of exported key on success失敗した場合に <info>false</info> を返します.


id: rnp_key_export_revocation
type: function
doc:
<comment>Description:</comment>
  Generate and export primary key revocation signature
  
  Note: to revoke a key you'll need to import this signature into the keystore or use
  <strong>rnp_key_revoke()</strong> function.

<comment>Param:</comment>
  <info>RnpFFI</info>  <strong>$ffi</strong>      The FFI object returned by rnp_ffi_create.
  <info>string</info>  <strong>$key_fp</strong>   Key fingerprint of the primary key to be revoked.
  <info>int</info>     <strong>$flags</strong>    <info>RNP_KEY_EXPORT_ARMORED</info> or 0.
  <info>array</info>   <strong>$options</strong>  An associative array with options.

<comment>Return:</comment>
  <info>string|false</info>  Exported revocation signature on success失敗した場合に <info>false</info> を返します.


id: rnp_key_get_info
type: function
doc:
<comment>Description:</comment>
  Get information about the key

<comment>Param:</comment>
  <info>RnpFFI</info>  <strong>$ffi</strong>     The FFI object returned by rnp_ffi_create.
  <info>string</info>  <strong>$key_fp</strong>  Key fingerprint.

<comment>Return:</comment>
  <info>array|false</info>  An associative array with information about the key失敗した場合に <info>false</info> を返します.


id: rnp_key_remove
type: function
doc:
<comment>Description:</comment>
  Remove a key from keyring(s)
  
  Note: you need to call <strong>rnp_save_keys()</strong> to write updated keyring(s) out.

<comment>Param:</comment>
  <info>RnpFFI</info>  <strong>$ffi</strong>     The FFI object returned by rnp_ffi_create.
  <info>string</info>  <strong>$key_fp</strong>  Key fingerprint.
  <info>int</info>     <strong>$flags</strong>   See <info>RNP_KEY_REMOVE_*</info> constants. Flag <info>RNP_KEY_REMOVE_SUBKEYS</info> will work only for
                   the primary key and will remove all of its subkeys as well.

<comment>Return:</comment>
  <info>bool</info>  Returns <info>true</info> on success失敗した場合に <info>false</info> を返します.


id: rnp_key_revoke
type: function
doc:
<comment>Description:</comment>
  Revoke a key or subkey by generating and adding revocation signature
  
  Note: you need to call <strong>rnp_save_keys()</strong> to write updated keyring(s) out.

<comment>Param:</comment>
  <info>RnpFFI</info>  <strong>$ffi</strong>      The FFI object returned by rnp_ffi_create.
  <info>string</info>  <strong>$key_fp</strong>   Key fingerprint.
  <info>int</info>     <strong>$flags</strong>    Currently must be 0.
  <info>array</info>   <strong>$options</strong>  An associative array with options.

<comment>Return:</comment>
  <info>bool</info>  Returns <info>true</info> on success失敗した場合に <info>false</info> を返します.


id: rnp_list_keys
type: function
doc:
<comment>Description:</comment>
  Enumerate all keys present in a keyring by specified identifer type

<comment>Param:</comment>
  <info>RnpFFI</info>  <strong>$ffi</strong>              The FFI object returned by rnp_ffi_create.
  <info>string</info>  <strong>$identifier_type</strong>  Key identifier type ("userid", "keyid", "grip", "fingerprint").

<comment>Return:</comment>
  <info>array|false</info>  An associative array where key is an identifier string and value is a PGP key
               fingerprint失敗した場合に <info>false</info> を返します.


id: rnp_load_keys
type: function
doc:
<comment>Description:</comment>
  Load keys from PHP string
  
  Note that for G10, the input must be a directory (which must already exist).

<comment>Param:</comment>
  <info>RnpFFI</info>  <strong>$ffi</strong>     The FFI object returned by rnp_ffi_create.
  <info>string</info>  <strong>$format</strong>  The key format of the data (GPG, KBX, G10).
  <info>string</info>  <strong>$input</strong>   OpenPGP packets containing key(s) to be loaded. Can be either binary or ASCII
                   armored.
  <info>int</info>     <strong>$flags</strong>   See RNP_LOAD_SAVE_* flags description.

<comment>Return:</comment>
  <info>bool</info>  Returns <info>true</info> on success失敗した場合に <info>false</info> を返します.


id: rnp_load_keys_from_path
type: function
doc:
<comment>Description:</comment>
  Load keys from specified path
  
  Note that for G10, the input must be a directory (which must already exist).

<comment>Param:</comment>
  <info>RnpFFI</info>  <strong>$ffi</strong>         The FFI object returned by rnp_ffi_create.
  <info>string</info>  <strong>$format</strong>      The key format of the data (GPG, KBX, G10).
  <info>string</info>  <strong>$input_path</strong>  file or directory containing the keys.
  <info>int</info>     <strong>$flags</strong>       See RNP_LOAD_SAVE_* flags description.

<comment>Return:</comment>
  <info>bool</info>  Returns <info>true</info> on success失敗した場合に <info>false</info> を返します.


id: rnp_locate_key
type: function
doc:
<comment>Description:</comment>
  Search for the key
  
  Note: only valid userids are checked while searching by userid.

<comment>Param:</comment>
  <info>RnpFFI</info>  <strong>$ffi</strong>              The FFI object returned by rnp_ffi_create.
  <info>string</info>  <strong>$identifier_type</strong>  Identifier type string: "userid", "keyid", "fingerprint", "grip".
  <info>string</info>  <strong>$identifier</strong>       PGP User ID (name and email) for "userid" type, hexadecimal string that
                            represents key id, fingerprint or key grip correspondingly.

<comment>Return:</comment>
  <info>string|false</info>  Returns hexadecimal fingerprint of the key found on success失敗した場合に <info>false</info> を返
                します.


id: rnp_op_encrypt
type: function
doc:
<comment>Description:</comment>
  Encrypt message

<comment>Param:</comment>
  <info>RnpFFI</info>  <strong>$ffi</strong>                The FFI object returned by rnp_ffi_create.
  <info>string</info>  <strong>$message</strong>            Message to be encrypted.
  <info>array</info>   <strong>$recipient_keys_fp</strong>  Array with fingerprints of recipient's keys. At least one key must be
                              present.
  <info>array</info>   <strong>$options</strong>            An associative array with options.

<comment>Return:</comment>
  <info>string|false</info>  Encrypted data on success失敗した場合に <info>false</info> を返します.


id: rnp_op_generate_key
type: function
doc:
<comment>Description:</comment>
  Generate key

<comment>Param:</comment>
  <info>RnpFFI</info>  <strong>$ffi</strong>      The FFI object returned by rnp_ffi_create.
  <info>string</info>  <strong>$userid</strong>   PGP User ID - text that is intended to represent the name and email address of
                    the key holder.
  <info>string</info>  <strong>$key_alg</strong>  Primary key algorithm (i.e. 'RSA', 'DSA', etc).
  <info>string</info>  <strong>$sub_alg</strong>  Subkey algorithm. If not set, subkey will not be generated.
  <info>array</info>   <strong>$options</strong>  An associative array with options.

<comment>Return:</comment>
  <info>string|false</info>  Fingerprint of the generated primary key失敗した場合に <info>false</info> を返します. This
                fingerprint can be used later to reference the key in sign and encrypt operations.
                The key data is stored in FFI memory context and can be saved using <strong>rnp_save_keys()</strong>
                or <strong>rnp_save_keys_to_path()</strong>.


id: rnp_op_sign
type: function
doc:
<comment>Description:</comment>
  Perform signing operation on a binary data, return embedded signature(s)

<comment>Param:</comment>
  <info>RnpFFI</info>  <strong>$ffi</strong>      The FFI object returned by rnp_ffi_create.
  <info>string</info>  <strong>$data</strong>     Data to be signed.
  <info>array</info>   <strong>$keys_fp</strong>  Array with key fingerprints. At least one key must be provided. Keys should be
                    present in <strong>$ffi</strong>.
  <info>array</info>   <strong>$options</strong>  An associative array with options.

<comment>Return:</comment>
  <info>string|false</info>  Data with embedded signature(s) on success失敗した場合に <info>false</info> を返します.


id: rnp_op_sign_cleartext
type: function
doc:
<comment>Description:</comment>
  Perform signing operation on a textual data, return cleartext signed message

<comment>Param:</comment>
  <info>RnpFFI</info>  <strong>$ffi</strong>      The FFI object returned by rnp_ffi_create.
  <info>string</info>  <strong>$data</strong>     Data to be signed.
  <info>array</info>   <strong>$keys_fp</strong>  Array with key fingerprints. At least one key must be provided. Keys should be
                    present in <strong>$ffi</strong>.
  <info>array</info>   <strong>$options</strong>  An associative array with options.

<comment>Return:</comment>
  <info>string|false</info>  Cleartext signed message containing source data with additional headers and
                ASCII-armored signature on success失敗した場合に <info>false</info> を返します.


id: rnp_op_sign_detached
type: function
doc:
<comment>Description:</comment>
  Perform signing operation, return detached signature(s)

<comment>Param:</comment>
  <info>RnpFFI</info>  <strong>$ffi</strong>      The FFI object returned by rnp_ffi_create.
  <info>string</info>  <strong>$data</strong>     Data to be signed.
  <info>array</info>   <strong>$keys_fp</strong>  Array with key fingerprints. At least one key must be provided. Keys should be
                    present in <strong>$ffi</strong>.
  <info>array</info>   <strong>$options</strong>  An associative array with options.

<comment>Return:</comment>
  <info>string|false</info>  Detached signature(s) data on success失敗した場合に <info>false</info> を返します.


id: rnp_op_verify
type: function
doc:
<comment>Description:</comment>
  Verify embedded or cleartext signatures

<comment>Param:</comment>
  <info>RnpFFI</info>  <strong>$ffi</strong>   The FFI object returned by rnp_ffi_create.
  <info>string</info>  <strong>$data</strong>  Signed data.

<comment>Return:</comment>
  <info>array|false</info>  An associative array with information about verification results失敗した場合に <info>false</info>
               を返します.
               
               "signatures" sub-array.


id: rnp_op_verify_detached
type: function
doc:
<comment>Description:</comment>
  Verify detached signatures

<comment>Param:</comment>
  <info>RnpFFI</info>  <strong>$ffi</strong>        The FFI object returned by rnp_ffi_create.
  <info>string</info>  <strong>$data</strong>       Source data.
  <info>string</info>  <strong>$signature</strong>  Detached signature data.

<comment>Return:</comment>
  <info>array|false</info>  An associative array with information about verification results失敗した場合に <info>false</info>
               を返します.
               
               "signatures" sub-array.


id: rnp_save_keys
type: function
doc:
<comment>Description:</comment>
  Save keys to PHP string
  
  Note that for G10, the output must be a directory (which must already exist).

<comment>Param:</comment>
  <info>RnpFFI</info>  <strong>$ffi</strong>     The FFI object returned by rnp_ffi_create.
  <info>string</info>  <strong>$format</strong>  The key format of the data (GPG, KBX, G10).
  <info>string</info>  <strong>$output</strong>  key packets will be saved to the string referenced by <strong>$output</strong>.
  <info>int</info>     <strong>$flags</strong>   See RNP_LOAD_SAVE_* flags description.

<comment>Return:</comment>
  <info>bool</info>  Returns <info>true</info> on success失敗した場合に <info>false</info> を返します.


id: rnp_save_keys_to_path
type: function
doc:
<comment>Description:</comment>
  Save keys to specified path
  
  Saves keys present in the FFI object (loaded or generated) to the specified file or directory.

<comment>Param:</comment>
  <info>RnpFFI</info>  <strong>$ffi</strong>          The FFI object returned by rnp_ffi_create.
  <info>string</info>  <strong>$format</strong>       The key format of the data (GPG, KBX, G10).
  <info>string</info>  <strong>$output_path</strong>  File or directory path where keys should be saved to.
  <info>int</info>     <strong>$flags</strong>        See RNP_LOAD_SAVE_* flags description.

<comment>Return:</comment>
  <info>bool</info>  Returns <info>true</info> on success失敗した場合に <info>false</info> を返します.


id: rnp_supported_features
type: function
doc:
<comment>Description:</comment>
  Get supported features in JSON format
  
  Get the JSON formatted string containing array of supported rnp feature values (algorithms,
  curves, etc) by type.

<comment>Param:</comment>
  <info>string</info>  <strong>$type</strong>  See RNP_FEATURE_* constants for supported values.

<comment>Return:</comment>
  <info>string|false</info>  String containing JSON formatted array of supported algorithms, curves, etc失敗した
                場合に <info>false</info> を返します.


id: rnp_version_string
type: function
doc:
<comment>Description:</comment>
  RNP library version

<comment>Return:</comment>
  <info>string</info>  Returns RNP library version string.


id: rnp_version_string_full
type: function
doc:
<comment>Description:</comment>
  Full version string of RNP library

<comment>Return:</comment>
  <info>string</info>  Returns full version string of RNP library.


id: round
type: function
doc:
<comment>Description:</comment>
  浮動小数点数を丸める
  
  <strong>$num</strong> を、指定した <strong>$precision</strong>(小数点以下の桁数)に丸めた値を 返します。<strong>$precision</strong> を負またはゼロ(デ
  フォルト) とすることも可能です。

<comment>Param:</comment>
  <info>int|float</info>  <strong>$num</strong>        丸める値。
  <info>int</info>        <strong>$precision</strong>  オプションで指定する、丸める桁数。
                         
                         <strong>$precision</strong> が正の値の場合、 <strong>$num</strong> は 小数点以下、有効桁数 <strong>$precision</strong> 桁に丸
                         められます。
                         
                         <strong>$precision</strong> が負の場合、 <strong>$num</strong> の 丸め処理は小数点より前の <strong>$precision</strong> 桁に対
                         して行われます。 つまり、一番近い pow(10, -$precision) の倍数に丸められま
                         す。 たとえば、<strong>$precision</strong> が -1 の場合、 <strong>$num</strong> は 一番近い10の倍数に、
                         <strong>$precision</strong> が -2 の場合は 一番近い100の倍数に丸められる、という具合です。
  <info>int</info>        <strong>$mode</strong>       次の定数のいずれかを使って、丸めのモードを指定します。 定数説明
                         <info>PHP_ROUND_HALF_UP</info> 端数が5(半分)の場合、 <strong>$num</strong> をゼロから離れる方向に丸めま
                         す。 1.5 は 2 に、そして -1.5 は -2 になります。 <info>PHP_ROUND_HALF_DOWN</info> 端数が
                         5(半分)の場合、 <strong>$num</strong> をゼロに近づく方向に丸めます。 1.5 は 1 に、そして
                         -1.5 は -1 になります。 <info>PHP_ROUND_HALF_EVEN</info> 端数が5(半分)の場合、 <strong>$num</strong> を
                         もっとも近い偶数に丸めます。 1.5 や 2.5 は 2 になります。
                         <info>PHP_ROUND_HALF_ODD</info> 端数が5(半分)の場合、 <strong>$num</strong> をもっとも近い奇数に丸めま
                         す。 1.5 は 1 に、そして 2.5 は 3 になります。

<comment>Return:</comment>
  <info>float</info>  <strong>$precision</strong> で与えられた精度に丸められた値を <info>float</info> で返します。

<comment>See Also:</comment>
   * <strong>ceil()</strong>
   * <strong>floor()</strong>
   * <strong>number_format()</strong>


id: rpmaddtag
type: function
doc:
<comment>Description:</comment>
  Add tag retrieved in query
  
  Add an additional retrieved tag in subsequent queries.

<comment>Param:</comment>
  <info>int</info>  <strong>$tag</strong>  One of RPMTAG_* constant, see the rpminfo constants page.

<comment>Return:</comment>
  <info>bool</info>  成功した場合に <info>true</info> を、失敗した場合に <info>false</info> を返します。

<comment>See Also:</comment>
   * <strong>rpminfo()</strong>
   * <strong>rpmdbinfo()</strong>
   * <strong>rpmdbsearch()</strong>


id: rpmdbinfo
type: function
doc:
<comment>Description:</comment>
  Get information from installed RPM
  
  Retrieve information about an installed package, from the system RPM database.

<comment>Param:</comment>
  <info>string</info>  <strong>$nevr</strong>  Name with optional epoch, version and release.
  <info>bool</info>    <strong>$full</strong>  If <info>true</info> all information headers for the file are retrieved, else only a minimal
                 set.

<comment>Return:</comment>
  <info>array|null</info>  An <info>array</info> of <info>array</info> of information or NULL on error.

<comment>See Also:</comment>
   * <strong>rpmaddtag()</strong>


id: rpmdbsearch
type: function
doc:
<comment>Description:</comment>
  Search RPM packages
  
  Search packages in the system RPM database.

<comment>Param:</comment>
  <info>string</info>  <strong>$pattern</strong>  Value to search for.
  <info>int</info>     <strong>$rpmtag</strong>   Search criterion, one of RPMTAG_* constant, see the rpminfo constants page.
  <info>int</info>     <strong>$rpmmire</strong>  Pattern type, one of RPMMIRE_* constant, see the rpminfo constants page. When
                    \< 0 the criterion must equals the value, and database index is used if possible.
  <info>bool</info>    <strong>$full</strong>     If <info>true</info> all information headers for the file are retrieved, else only a minimal
                    set.

<comment>Return:</comment>
  <info>array|null</info>  An <info>array</info> of <info>array</info> of information or NULL on error.

<comment>See Also:</comment>
   * <strong>rpmaddtag()</strong>


id: rpmgetsymlink
type: function
doc:
<comment>Description:</comment>
  Get target of a symlink
  
  Get target of a symlink.

<comment>Param:</comment>
  <info>string</info>  <strong>$path</strong>  Path of the RPM file.
  <info>string</info>  <strong>$name</strong>  Name of the symlink file.

<comment>Return:</comment>
  <info>string|null</info>  A <info>string</info> with target of the symlink, NULL on error, or an empty string if not a
               symlink.


id: rpminfo
type: function
doc:
<comment>Description:</comment>
  Get information from a RPM file
  
  Retrieve information about a local file, a RPM package.

<comment>Param:</comment>
  <info>string</info>  <strong>$path</strong>   Path of the RPM file.
  <info>bool</info>    <strong>$full</strong>   If <info>true</info> all information headers for the file are retrieved, else only a minimal
                  set.
  <info>string</info>  <strong>$error</strong>  If provided, will receive the possible error message, and will avoid a runtime
                  warning.

<comment>Return:</comment>
  <info>array|null</info>  An <info>array</info> of information or NULL on error.

<comment>See Also:</comment>
   * <strong>rpmaddtag()</strong>


id: rpmvercmp
type: function
doc:
<comment>Description:</comment>
  RPM version comparison
  
  Compare 2 RPM versions.

<comment>Param:</comment>
  <info>string</info>       <strong>$evr1</strong>      First epoch:version-release string
  <info>string</info>       <strong>$evr2</strong>      Second epoch:version-release string
  <info>string|null</info>  <strong>$operator</strong>  An optional operator. The possible operators are: <return>\<</return>, <return>lt</return>, <return>\<=</return>, <return>le</return>, <return>&gt;</return>, <return>gt</return>, <return>&gt;=</return>, <return>ge</return>, <return>==</return>, <return>=</return>, <return>eq</return>, <return>!=</return>, <return>\<&gt;</return>, <return>ne</return> respectively.
                          
                          This parameter is case-sensitive, values should be lowercase.

<comment>Return:</comment>
  <info>int|bool</info>  Returns
            \< 0 if evr1 is less than evr2, &gt; 0 if evr1 is greater than evr2, and 0 if they are equal.
            
            When using the optional <strong>$operator</strong> argument, the function will return <info>true</info> if the
            relationship is the one specified by the operator, <info>false</info> otherwise.


id: rrd_create
type: function
doc:
<comment>Description:</comment>
  Creates rrd database file
  
  Creates the rdd database file.

<comment>Param:</comment>
  <info>string</info>  <strong>$filename</strong>  Filename for newly created rrd file.
  <info>array</info>   <strong>$options</strong>   Options for rrd create - list of strings. See man page of rrd create for whole
                     list of options.

<comment>Return:</comment>
  <info>bool</info>  成功した場合に <info>true</info> を、失敗した場合に <info>false</info> を返します。


id: rrd_error
type: function
doc:
<comment>Description:</comment>
  Gets latest error message
  
  Returns latest global rrd error message.

<comment>Return:</comment>
  <info>string</info>  Latest error message.


id: rrd_fetch
type: function
doc:
<comment>Description:</comment>
  Fetch the data for graph as array
  
  Gets data for graph output from RRD database file as array. This function has same result as
  <strong>rrd_graph()</strong>,  but fetched data are returned as array, no image file is created.

<comment>Param:</comment>
  <info>string</info>  <strong>$filename</strong>  RRD database file name.
  <info>array</info>   <strong>$options</strong>   Array of options for resolution specification.

<comment>Return:</comment>
  <info>array</info>  Returns information about retrieved graph data.


id: rrd_first
type: function
doc:
<comment>Description:</comment>
  Gets the timestamp of the first sample from rrd file
  
  Returns the first data sample from the specified RRA of the RRD file.

<comment>Param:</comment>
  <info>string</info>  <strong>$file</strong>      RRD database file name.
  <info>int</info>     <strong>$raaindex</strong>  The index number of the RRA that is to be examined. Default value is 0.

<comment>Return:</comment>
  <info>int</info>  Integer number of unix timestamp,失敗した場合に <info>false</info> を返します.


id: rrd_graph
type: function
doc:
<comment>Description:</comment>
  Creates image from a data
  
  Creates image for a particular data from RRD file.

<comment>Param:</comment>
  <info>string</info>  <strong>$filename</strong>  The filename to output the graph to. This will generally end in either <return>.png</return>,
                     <return>.svg</return> or <return>.eps</return>, depending on the format you want to output.
  <info>array</info>   <strong>$options</strong>   Options for generating image. See man page of rrd graph for all possible
                     options. All options (data definitions, variable definitions, etc.) are
                     allowed.

<comment>Return:</comment>
  <info>array</info>  Array with information about generated image is returned,失敗した場合に <info>false</info> を返します.


id: rrd_info
type: function
doc:
<comment>Description:</comment>
  Gets information about rrd file
  
  Returns information about particular RRD database file.

<comment>Param:</comment>
  <info></info>  <strong>$file</strong>  RRD database file name.

<comment>Return:</comment>
  <info>array</info>  Array with information about requested RRD file,失敗した場合に <info>false</info> を返します.


id: rrd_last
type: function
doc:
<comment>Description:</comment>
  Gets unix timestamp of the last sample
  
  Returns the UNIX timestamp of the most recent update of the RRD database.

<comment>Param:</comment>
  <info>string</info>  <strong>$filename</strong>  RRD database file name.

<comment>Return:</comment>
  <info>int</info>  Integer as unix timestamp of the most recent data from the RRD database.


id: rrd_lastupdate
type: function
doc:
<comment>Description:</comment>
  Gets information about last updated data
  
  Gets array of the UNIX timestamp and the values stored for each date in the most recent update of
  the RRD database file.

<comment>Param:</comment>
  <info></info>  <strong>$file</strong>  RRD database file name.

<comment>Return:</comment>
  <info>array</info>  Array of information about last update,失敗した場合に <info>false</info> を返します.


id: rrd_restore
type: function
doc:
<comment>Description:</comment>
  Restores the RRD file from XML dump
  
  Restores the RRD file from the XML dump.

<comment>Param:</comment>
  <info>string</info>  <strong>$xml_file</strong>  XML filename with the dump of the original RRD database file.
  <info>string</info>  <strong>$rrd_file</strong>  Restored RRD database file name.
  <info>array</info>   <strong>$options</strong>   Array of options for restoring. See man page for rrd restore.

<comment>Return:</comment>
  <info>bool</info>  成功した場合に <info>true</info> を、失敗した場合に <info>false</info> を返します。


id: rrd_tune
type: function
doc:
<comment>Description:</comment>
  Tunes some RRD database file header options
  
  Change some options in the RRD dabase header file. E.g. renames the source for the data etc.

<comment>Param:</comment>
  <info>string</info>  <strong>$filename</strong>  RRD database file name.
  <info>array</info>   <strong>$options</strong>   Options with RRD database file properties which will be changed. See rrd tune
                     man page for details.

<comment>Return:</comment>
  <info>bool</info>  成功した場合に <info>true</info> を、失敗した場合に <info>false</info> を返します。


id: rrd_update
type: function
doc:
<comment>Description:</comment>
  Updates the RRD database
  
  Updates the RRD database file. The input data is time interpolated according to the properties of
  the RRD database file.

<comment>Param:</comment>
  <info>string</info>  <strong>$filename</strong>  RRD database file name. This database will be updated.
  <info>array</info>   <strong>$options</strong>   Options for updating the RRD database. This is list of strings. See man page of
                     rrd update for whole list of options.

<comment>Return:</comment>
  <info>bool</info>  成功した場合に <info>true</info> を、失敗した場合に <info>false</info> を返します。


id: rrd_version
type: function
doc:
<comment>Description:</comment>
  Gets information about underlying rrdtool library
  
  Returns information about underlying rrdtool library.

<comment>Return:</comment>
  <info>string</info>  String with rrdtool version number e.g. "1.4.3".


id: rrd_xport
type: function
doc:
<comment>Description:</comment>
  Exports the information about RRD database
  
  Exports the information about RRD database file. This data can be converted to XML file via user
  space PHP script and then restored back as RRD database file.

<comment>Param:</comment>
  <info>array</info>  <strong>$options</strong>  Array of options for the export, see rrd xport man page.

<comment>Return:</comment>
  <info>array</info>  Array with information about RRD database file,失敗した場合に <info>false</info> を返します.


id: rrdc_disconnect
type: function
doc:
<comment>Description:</comment>
  Close any outstanding connection to rrd caching daemon
  
  Close any outstanding connection to rrd caching daemon.
  
  This function is automatically called when the whole PHP process is terminated. It depends on used
  SAPI. For example, it's called automatically at the end of command line script.
  
  It's up user whether he wants to call this function at the end of every request or otherwise.

<comment>Return:</comment>
  <info>void</info>  値を返しません。


id: rsort
type: function
doc:
<comment>Description:</comment>
  配列を降順にソートする
  
  <strong>$array</strong> を、値で降順にソートします。
  
  比較結果が等しくなる二つの要素があった場合、それらの並び順は保持されます。PHP 8.0.0 より前のバー
  ジョンでは、ソートした配列におけるそれらの並び順は不定でした。
  
  この関数は、
  <strong>$array</strong> パラメータの要素に対して新しいキーを割り当てます。
  その際、単純にキーを並べ替える代わりに、
  すでに割り当てられている既存のキーを削除してしまいます。
  
  この関数をコールすると、配列の内部ポインタは最初の要素にリセットされます。

<comment>Param:</comment>
  <info>array</info>  <strong>$array</strong>  入力の配列。
  <info>int</info>    <strong>$flags</strong>  オプションの第二引数 <strong>$flags</strong> によりソートの動作を修正可能です。 使える値は下記の通り
                 です:
                 
                 ソートタイプのフラグ: <info>SORT_REGULAR</info> - 通常通りに項目を比較します。 詳細は 比較演算子
                 で説明されています。<info>SORT_NUMERIC</info> - 数値として項目を比較します。<info>SORT_STRING</info> - 文字列
                 として項目を比較します。<info>SORT_LOCALE_STRING</info> - 現在のロケールに基づいて、文字列として
                 項目を比較します。 比較に使うロケールは、<strong>setlocale()</strong> 関数で変更できます。
                 <info>SORT_NATURAL</info> - 要素の比較を文字列として行い、  <strong>natsort()</strong> と同様の「自然順」で比較し
                 ます。 <info>SORT_FLAG_CASE</info> - <info>SORT_STRING</info> や <info>SORT_NATURAL</info> と (ビットORで) 組み合わせて使
                 い、 文字列のソートで大文字小文字を区別しないようにします。
                 
                 <info>SORT_REGULAR</info> - 通常通りに項目を比較します。 詳細は 比較演算子 で説明されています。
                 
                 <info>SORT_NUMERIC</info> - 数値として項目を比較します。
                 
                 <info>SORT_STRING</info> - 文字列として項目を比較します。
                 
                 <info>SORT_LOCALE_STRING</info> - 現在のロケールに基づいて、文字列として項目を比較します。 比較
                 に使うロケールは、<strong>setlocale()</strong> 関数で変更できます。
                 
                 <info>SORT_NATURAL</info> - 要素の比較を文字列として行い、  <strong>natsort()</strong> と同様の「自然順」で比較し
                 ます。
                 
                 <info>SORT_FLAG_CASE</info> - <info>SORT_STRING</info> や <info>SORT_NATURAL</info> と (ビットORで) 組み合わせて使い、 文
                 字列のソートで大文字小文字を区別しないようにします。

<comment>Return:</comment>
  <info>true</info>  常に <info>true</info> を返します。

<comment>See Also:</comment>
   * <strong>sort()</strong>
   * <strong>arsort()</strong>
   * <strong>krsort()</strong>
   * 配列ソート関数の比較


id: rtrim
type: function
doc:
<comment>Description:</comment>
  文字列の最後から空白 (もしくはその他の文字) を取り除く
  
  この関数は文字列 <strong>$string</strong> の最後から空白文字 (あるいはその他の文字) を取り除き、 取り除かれた文字列
  を返します。
  
  2 番目のパラメータを指定しない場合、 <strong>rtrim()</strong> は以下の文字を削除します。   " " (ASCII <return>32</return> (<return>0x20</return>)),
  通常の空白。  "\t" (ASCII <return>9</return> (<return>0x09</return>)), タブ。  "\n" (ASCII <return>10</return> (<return>0x0A</return>)), 改行。  "\r" (ASCII <return>13</return>
  (<return>0x0D</return>)), 復帰。  "\0" (ASCII <return>0</return> (<return>0x00</return>)), <return>NULL</return> バイト。  "\v" (ASCII <return>11</return> (<return>0x0B</return>)), 垂直タブ。
  
  " " (ASCII <return>32</return> (<return>0x20</return>)), 通常の空白。
  
  "\t" (ASCII <return>9</return> (<return>0x09</return>)), タブ。
  
  "\n" (ASCII <return>10</return> (<return>0x0A</return>)), 改行。
  
  "\r" (ASCII <return>13</return> (<return>0x0D</return>)), 復帰。
  
  "\0" (ASCII <return>0</return> (<return>0x00</return>)), <return>NULL</return> バイト。
  
  "\v" (ASCII <return>11</return> (<return>0x0B</return>)), 垂直タブ。

<comment>Param:</comment>
  <info>string</info>  <strong>$string</strong>      入力文字列。
  <info>string</info>  <strong>$characters</strong>  <strong>$characters</strong> パラメータにより、 削除する文字を指定することも可能です。 削除し
                       たい全ての文字をリストにしてください。<return>..</return> を文字の範囲を指定する際に使用可能で
                       す。

<comment>Return:</comment>
  <info>string</info>  変更後の文字列を返します。

<comment>See Also:</comment>
   * <strong>trim()</strong>
   * <strong>ltrim()</strong>


id: runkit7_constant_add
type: function
doc:
<comment>Description:</comment>
  Similar to define(), but allows defining in class definitions as well

<comment>Param:</comment>
  <info>string</info>  <strong>$constant_name</strong>  Name of constant to declare.  Either a string to indicate a global
                          constant, or <return>classname::constname</return> to indicate a class constant.
  <info>mixed</info>   <strong>$value</strong>          NULL, Bool, Long, Double, String, Array, or Resource value to store in the
                          new constant.
  <info>int</info>     <strong>$newVisibility</strong>  Visibility of the constant, for class constants. Public by default. One of
                          the <info>RUNKIT7_ACC_*</info> constants.

<comment>Return:</comment>
  <info>bool</info>  成功した場合に <info>true</info> を、失敗した場合に <info>false</info> を返します。

<comment>See Also:</comment>
   * <strong>define()</strong>
   * <strong>runkit7_constant_redefine()</strong>
   * <strong>runkit7_constant_remove()</strong>


id: runkit7_constant_redefine
type: function
doc:
<comment>Description:</comment>
  Redefine an already defined constant

<comment>Param:</comment>
  <info>string</info>  <strong>$constant_name</strong>   Constant to redefine.  Either the name of a global constant, or
                           <return>classname::constname</return> indicating class constant.
  <info>mixed</info>   <strong>$value</strong>           Value to assign to the constant.
  <info>int</info>     <strong>$new_visibility</strong>  The new visibility of the constant, for class constants. Unchanged by
                           default. One of the <info>RUNKIT7_ACC_*</info> constants.

<comment>Return:</comment>
  <info>bool</info>  成功した場合に <info>true</info> を、失敗した場合に <info>false</info> を返します。

<comment>See Also:</comment>
   * <strong>runkit7_constant_add()</strong>
   * <strong>runkit7_constant_remove()</strong>


id: runkit7_constant_remove
type: function
doc:
<comment>Description:</comment>
  Remove/Delete an already defined constant

<comment>Param:</comment>
  <info>string</info>  <strong>$constant_name</strong>  Name of the constant to remove.  Either the name of a global constant, or
                          <return>classname::constname</return> indicating a class constant.

<comment>Return:</comment>
  <info>bool</info>  成功した場合に <info>true</info> を、失敗した場合に <info>false</info> を返します。

<comment>See Also:</comment>
   * <strong>define()</strong>
   * <strong>runkit7_constant_add()</strong>
   * <strong>runkit7_constant_redefine()</strong>


id: runkit7_function_add
type: function
doc:
<comment>Description:</comment>
  Add a new function, similar to create_function

<comment>Param:</comment>
  <info>string</info>   <strong>$function_name</strong>        Name of the function to be created
  <info>string</info>   <strong>$argument_list</strong>        Comma separated argument list
  <info>string</info>   <strong>$code</strong>                 Code making up the function
  <info>Closure</info>  <strong>$closure</strong>              A <class>closure</class> that defines the function.
  <info>bool</info>     <strong>$return_by_reference</strong>  Whether the function should return by reference.
  <info>string</info>   <strong>$doc_comment</strong>          The doc comment of the function.
  <info>string</info>   <strong>$return_type</strong>          The return type of the function.
  <info>bool</info>     <strong>$is_strict</strong>            Whether the function should behave as if it were declared in a file
                                 with <return>strict_types=1</return>

<comment>Return:</comment>
  <info>bool</info>  成功した場合に <info>true</info> を、失敗した場合に <info>false</info> を返します。

<comment>See Also:</comment>
   * <strong>create_function()</strong>
   * <strong>runkit7_function_redefine()</strong>
   * <strong>runkit7_function_copy()</strong>
   * <strong>runkit7_function_rename()</strong>
   * <strong>runkit7_function_remove()</strong>
   * <strong>runkit7_method_add()</strong>


id: runkit7_function_copy
type: function
doc:
<comment>Description:</comment>
  Copy a function to a new function name

<comment>Param:</comment>
  <info>string</info>  <strong>$source_name</strong>  Name of the existing function
  <info>string</info>  <strong>$target_name</strong>  Name of the new function to copy the definition to

<comment>Return:</comment>
  <info>bool</info>  成功した場合に <info>true</info> を、失敗した場合に <info>false</info> を返します。

<comment>See Also:</comment>
   * <strong>runkit7_function_add()</strong>
   * <strong>runkit7_function_redefine()</strong>
   * <strong>runkit7_function_rename()</strong>
   * <strong>runkit7_function_remove()</strong>


id: runkit7_function_redefine
type: function
doc:
<comment>Description:</comment>
  Replace a function definition with a new implementation
    
  
  デフォルトでは、
  削除・リネーム・変更が可能なのはユーザー定義関数だけです。組み込み関数を
  オーバーライドするには、php.ini で
  <return>runkit.internal_override</return> を有効にする必要があります。

<comment>Param:</comment>
  <info>string</info>   <strong>$function_name</strong>        Name of function to redefine
  <info>string</info>   <strong>$argument_list</strong>        New list of arguments to be accepted by function
  <info>string</info>   <strong>$code</strong>                 New code implementation
  <info>Closure</info>  <strong>$closure</strong>              A <class>closure</class> that defines the function.
  <info>bool</info>     <strong>$return_by_reference</strong>  Whether the function should return by reference.
  <info>string</info>   <strong>$doc_comment</strong>          The doc comment of the function.
  <info>string</info>   <strong>$return_type</strong>          The return type of the function.
  <info>bool</info>     <strong>$is_strict</strong>            Whether the function behaves as if it was declared in a file with
                                 <return>strict_types=1</return>

<comment>Return:</comment>
  <info>bool</info>  成功した場合に <info>true</info> を、失敗した場合に <info>false</info> を返します。

<comment>See Also:</comment>
   * <strong>runkit7_function_add()</strong>
   * <strong>runkit7_function_copy()</strong>
   * <strong>runkit7_function_rename()</strong>
   * <strong>runkit7_function_remove()</strong>
   * <strong>runkit7_method_redefine()</strong>


id: runkit7_function_remove
type: function
doc:
<comment>Description:</comment>
  Remove a function definition
    
  
  デフォルトでは、
  削除・リネーム・変更が可能なのはユーザー定義関数だけです。組み込み関数を
  オーバーライドするには、php.ini で
  <return>runkit.internal_override</return> を有効にする必要があります。

<comment>Param:</comment>
  <info>string</info>  <strong>$function_name</strong>  Name of the function to be deleted

<comment>Return:</comment>
  <info>bool</info>  成功した場合に <info>true</info> を、失敗した場合に <info>false</info> を返します。

<comment>See Also:</comment>
   * <strong>runkit7_function_add()</strong>
   * <strong>runkit7_function_copy()</strong>
   * <strong>runkit7_function_redefine()</strong>
   * <strong>runkit7_function_rename()</strong>


id: runkit7_function_rename
type: function
doc:
<comment>Description:</comment>
  Change a function's name
    
  
  デフォルトでは、
  削除・リネーム・変更が可能なのはユーザー定義関数だけです。組み込み関数を
  オーバーライドするには、php.ini で
  <return>runkit.internal_override</return> を有効にする必要があります。

<comment>Param:</comment>
  <info>string</info>  <strong>$source_name</strong>  Current function name
  <info>string</info>  <strong>$target_name</strong>  New function name

<comment>Return:</comment>
  <info>bool</info>  成功した場合に <info>true</info> を、失敗した場合に <info>false</info> を返します。

<comment>See Also:</comment>
   * <strong>runkit7_function_add()</strong>
   * <strong>runkit7_function_copy()</strong>
   * <strong>runkit7_function_redefine()</strong>
   * <strong>runkit7_function_remove()</strong>


id: runkit7_import
type: function
doc:
<comment>Description:</comment>
  Process a PHP file importing function and class definitions, overwriting where appropriate
    
  
  Similar to <strong>include()</strong>. However, any code residing outside of a function or class is simply ignored.
  Additionally, depending on the value of <strong>$flags</strong>, any functions or classes which already exist in
  the currently running environment may be automatically overwritten by their new definitions.

<comment>Param:</comment>
  <info>string</info>  <strong>$filename</strong>  Filename to import function and class definitions from
  <info>int</info>     <strong>$flags</strong>     Bitwise OR of the <return>RUNKIT7_IMPORT_*</return> family of constants.

<comment>Return:</comment>
  <info>bool</info>  成功した場合に <info>true</info> を、失敗した場合に <info>false</info> を返します。


id: runkit7_method_add
type: function
doc:
<comment>Description:</comment>
  Dynamically adds a new method to a given class

<comment>Param:</comment>
  <info>string</info>   <strong>$class_name</strong>     The class to which this method will be added
  <info>string</info>   <strong>$method_name</strong>    The name of the method to add
  <info>string</info>   <strong>$argument_list</strong>  Comma-delimited list of arguments for the newly-created method
  <info>string</info>   <strong>$code</strong>           The code to be evaluated when <strong>$method_name</strong> is called
  <info>Closure</info>  <strong>$closure</strong>        A <class>closure</class> that defines the method.
  <info>int</info>      <strong>$flags</strong>          The type of method to create, can be <info>RUNKIT7_ACC_PUBLIC</info>,
                           <info>RUNKIT7_ACC_PROTECTED</info> or <info>RUNKIT7_ACC_PRIVATE</info> optionally combined via
                           bitwise OR with <info>RUNKIT7_ACC_STATIC</info>
  <info>string</info>   <strong>$doc_comment</strong>    The doc comment of the method.
  <info>string</info>   <strong>$return_type</strong>    The return type of the method.
  <info>bool</info>     <strong>$is_strict</strong>      Whether the method behaves as if it were declared in a file with
                           <return>strict_types=1</return>

<comment>Return:</comment>
  <info>bool</info>  成功した場合に <info>true</info> を、失敗した場合に <info>false</info> を返します。

<comment>See Also:</comment>
   * <strong>runkit7_method_copy()</strong>
   * <strong>runkit7_method_redefine()</strong>
   * <strong>runkit7_method_remove()</strong>
   * <strong>runkit7_method_rename()</strong>
   * <strong>runkit7_function_add()</strong>


id: runkit7_method_copy
type: function
doc:
<comment>Description:</comment>
  Copies a method from class to another

<comment>Param:</comment>
  <info>string</info>  <strong>$destination_class</strong>        Destination class for copied method
  <info>string</info>  <strong>$destination_method_name</strong>  Destination method name
  <info>string</info>  <strong>$source_class</strong>             Source class of the method to copy
  <info>string</info>  <strong>$source_method_name</strong>       Name of the method to copy from the source class. If this
                                    parameter is omitted, the value of <strong>$destination_method_name</strong> is
                                    assumed.

<comment>Return:</comment>
  <info>bool</info>  

<comment>See Also:</comment>
   * <strong>runkit7_method_add()</strong>
   * <strong>runkit7_method_redefine()</strong>
   * <strong>runkit7_method_remove()</strong>
   * <strong>runkit7_method_rename()</strong>
   * <strong>runkit7_function_copy()</strong>


id: runkit7_method_redefine
type: function
doc:
<comment>Description:</comment>
  Dynamically changes the code of the given method

<comment>Param:</comment>
  <info>string</info>   <strong>$class_name</strong>     The class in which to redefine the method
  <info>string</info>   <strong>$method_name</strong>    The name of the method to redefine
  <info>string</info>   <strong>$argument_list</strong>  Comma-delimited list of arguments for the redefined method
  <info>string</info>   <strong>$code</strong>           The new code to be evaluated when <strong>$method_name</strong> is called
  <info>Closure</info>  <strong>$closure</strong>        A <class>closure</class> that defines the method.
  <info>int</info>      <strong>$flags</strong>          The redefined method can be <info>RUNKIT7_ACC_PUBLIC</info>, <info>RUNKIT7_ACC_PROTECTED</info> or
                           <info>RUNKIT7_ACC_PRIVATE</info> optionally combined via bitwise OR with
                           <info>RUNKIT7_ACC_STATIC</info>
  <info>string</info>   <strong>$doc_comment</strong>    The doc comment of the method.
  <info>string</info>   <strong>$return_type</strong>    The return type of the method.
  <info>bool</info>     <strong>$is_strict</strong>      Whether the method behaves as if it was declared in a file with
                           <return>strict_types=1</return>.

<comment>Return:</comment>
  <info>bool</info>  成功した場合に <info>true</info> を、失敗した場合に <info>false</info> を返します。

<comment>See Also:</comment>
   * <strong>runkit7_method_add()</strong>
   * <strong>runkit7_method_copy()</strong>
   * <strong>runkit7_method_remove()</strong>
   * <strong>runkit7_method_rename()</strong>
   * <strong>runkit7_function_redefine()</strong>


id: runkit7_method_remove
type: function
doc:
<comment>Description:</comment>
  Dynamically removes the given method
  
  この関数は、
  現在実行中(もしくはチェーンド)のメソッドを操作することはできません。

<comment>Param:</comment>
  <info>string</info>  <strong>$class_name</strong>   The class in which to remove the method
  <info>string</info>  <strong>$method_name</strong>  The name of the method to remove

<comment>Return:</comment>
  <info>bool</info>  成功した場合に <info>true</info> を、失敗した場合に <info>false</info> を返します。

<comment>See Also:</comment>
   * <strong>runkit7_method_add()</strong>
   * <strong>runkit7_method_copy()</strong>
   * <strong>runkit7_method_redefine()</strong>
   * <strong>runkit7_method_rename()</strong>
   * <strong>runkit7_function_remove()</strong>


id: runkit7_method_rename
type: function
doc:
<comment>Description:</comment>
  Dynamically changes the name of the given method
  
  この関数は、
  現在実行中(もしくはチェーンド)のメソッドを操作することはできません。

<comment>Param:</comment>
  <info>string</info>  <strong>$class_name</strong>          The class in which to rename the method
  <info>string</info>  <strong>$source_method_name</strong>  The name of the method to rename
  <info>string</info>  <strong>$target_method_name</strong>  The new name to give to the renamed method

<comment>Return:</comment>
  <info>bool</info>  成功した場合に <info>true</info> を、失敗した場合に <info>false</info> を返します。

<comment>See Also:</comment>
   * <strong>runkit7_method_add()</strong>
   * <strong>runkit7_method_copy()</strong>
   * <strong>runkit7_method_redefine()</strong>
   * <strong>runkit7_method_remove()</strong>
   * <strong>runkit7_function_rename()</strong>


id: runkit7_object_id
type: function
doc:
<comment>Description:</comment>
  Return the integer object handle for given object
    
  
  This function is equivalent to <strong>spl_object_id()</strong>.
  
  This function returns a unique identifier for the object. The object id is unique for the lifetime
  of the object. Once the object is destroyed, its id may be reused for other objects. This behavior
  is similar to <strong>spl_object_hash()</strong>.

<comment>Param:</comment>
  <info>object</info>  <strong>$obj</strong>  Any object.

<comment>Return:</comment>
  <info>int</info>  An integer identifier that is unique for each currently existing object and is always the
       same for each object.

<comment>See Also:</comment>
   * <strong>spl_object_id()</strong>


id: runkit7_superglobals
type: function
doc:
<comment>Description:</comment>
  Return numerically indexed array of registered superglobals

<comment>Return:</comment>
  <info>array</info>  Returns a numerically indexed array of the currently registered superglobals. i.e. _GET,
         _POST, _REQUEST, _COOKIE, _SESSION, _SERVER, _ENV, _FILES

<comment>See Also:</comment>
   * Variable Scope


id: runkit7_zval_inspect
type: function
doc:
<comment>Description:</comment>
  Returns information about the passed in value with data types, reference counts, etc

<comment>Param:</comment>
  <info>string</info>  <strong>$value</strong>  The value to return the representation of

<comment>Return:</comment>
  <info>array</info>  The array returned by this function contains the following elements: <return>address</return><return>refcount</return>
         (optional)<return>is_ref</return> (optional)<return>type</return>

<comment>See Also:</comment>
   * References Explained
   * References Explained (by Derick Rethans)


id: sapi_windows_cp_conv
type: function
doc:
<comment>Description:</comment>
  文字列のコードページを別のものに変換する
  
  文字列のコードページを別のものに変換します。

<comment>Param:</comment>
  <info>int|string</info>  <strong>$in_codepage</strong>   <strong>$subject</strong> 文字列のコードページ。 コードページの名前、または識別子を指定
                             します。
  <info>int|string</info>  <strong>$out_codepage</strong>  <strong>$subject</strong> を文字列が変換されるコードページ。 コードページの名前、または
                             識別子を指定します。
  <info>string</info>      <strong>$subject</strong>       変換する文字列。

<comment>Return:</comment>
  <info>string|null</info>  <strong>$out_codepage</strong> に変換された <strong>$subject</strong> 文字列。 失敗した場合は <info>null</info> を返します。

<comment>See Also:</comment>
   * <strong>sapi_windows_cp_get()</strong>
   * <strong>iconv()</strong>


id: sapi_windows_cp_get
type: function
doc:
<comment>Description:</comment>
  現在のコードページを取得する
  
  現在のコードページを取得します。

<comment>Param:</comment>
  <info>string</info>  <strong>$kind</strong>  取得するオペレーティングシステムのコードページ: <return>'ansi'</return> または <return>'oem'</return> それ以外の値
                 は、現在のプロセスのコードページを参照します。

<comment>Return:</comment>
  <info>int</info>  コードページの識別子を返します。 <strong>$kind</strong> が <return>'ansi'</return> の場合、 オペレーティングシステムの、現在の
       ANSI  コードページを返します。 <strong>$kind</strong> が <return>'oem'</return> の場合、 オペレーティングシステムの、現在の OEM
       コードページを返します。 それ以外の場合、現在のプロセスのコードページを返します。

<comment>See Also:</comment>
   * <strong>sapi_windows_cp_set()</strong>


id: sapi_windows_cp_is_utf8
type: function
doc:
<comment>Description:</comment>
  コードページがUTF-8と互換性があるかを返す
  
  現在のプロセスのコードページが UTF-8 と互換性があるかを返します。

<comment>Return:</comment>
  <info>bool</info>  現在のプロセスのコードページが UTF-8 と互換性があるかを返します。

<comment>See Also:</comment>
   * <strong>sapi_windows_cp_get()</strong>


id: sapi_windows_cp_set
type: function
doc:
<comment>Description:</comment>
  現在のプロセスのコードページを設定する
  
  現在のプロセスのコードページを設定します。

<comment>Param:</comment>
  <info>int</info>  <strong>$codepage</strong>  コードページの識別子。

<comment>Return:</comment>
  <info>bool</info>  成功した場合に <info>true</info> を、失敗した場合に <info>false</info> を返します。

<comment>See Also:</comment>
   * <strong>sapi_windows_cp_get()</strong>


id: sapi_windows_generate_ctrl_event
type: function
doc:
<comment>Description:</comment>
  CTRLイベント を別プロセスに送信する
  
  同じプロセスグループの別プロセスに CTRLイベント を送信する。

<comment>Param:</comment>
  <info>int</info>  <strong>$event</strong>  送信する <return>CTRL</return> イベント: <info>PHP_WINDOWS_EVENT_CTRL_C</info> または <info>PHP_WINDOWS_EVENT_CTRL_BREAK</info>
  <info>int</info>  <strong>$pid</strong>    イベントを送信するプロセスID。 <return>0</return> に設定すると、プロセスグループに属する 全てのプロセ
               スにイベントが送信されます。

<comment>Return:</comment>
  <info>bool</info>  成功した場合に <info>true</info> を、失敗した場合に <info>false</info> を返します。

<comment>See Also:</comment>
   * <strong>proc_open()</strong>
   * <strong>sapi_windows_set_ctrl_handler()</strong>


id: sapi_windows_set_ctrl_handler
type: function
doc:
<comment>Description:</comment>
  CTRLイベント のハンドラを設定したり削除したりする
  
  <return>CTRL</return> イベントのハンドラを設定したり削除したりします。 これによって、Windows の CLI プロセスが、
  <return>CTRL+C</return> や <return>CTRL+BREAK</return> イベントに割り込んだり、無視したり出来るようになります。 マルチスレッド環境で
  は、この操作はメインスレッドからのみ可能です。

<comment>Param:</comment>
  <info>callable|null</info>  <strong>$handler</strong>  設定したり削除したりするコールバック関数。 設定した場合、この関数は
                           <return>CTRL+C</return> または <return>CTRL+BREAK</return> イベントが発生した場合にいつでも呼び出されます。
                           関数のシグネチャは次のとおりです: <info>void</info>handler<info>int</info><strong>$event</strong> <strong>$event</strong> 受け取った
                           <return>CTRL</return> イベント; <info>PHP_WINDOWS_EVENT_CTRL_C</info> または
                           <info>PHP_WINDOWS_EVENT_CTRL_BREAK</info>  <info>null</info> を <strong>$handler</strong> に設定すると、 <return>CTRL+C</return>イベ
                           ント をプロセスに無視させますが、 <return>CTRL+BREAK</return> イベントは無視しません。
                           
                           受け取った <return>CTRL</return> イベント; <info>PHP_WINDOWS_EVENT_CTRL_C</info> または
                           <info>PHP_WINDOWS_EVENT_CTRL_BREAK</info>
  <info>int</info>            <strong>$event</strong>    受け取った <return>CTRL</return> イベント; <info>PHP_WINDOWS_EVENT_CTRL_C</info> または
                           <info>PHP_WINDOWS_EVENT_CTRL_BREAK</info>
  <info>bool</info>           <strong>$add</strong>      <info>true</info> に設定し、ハンドラを設定します。 <info>false</info> の場合、ハンドラは削除されま
                           す。

<comment>Return:</comment>
  <info>bool</info>  成功した場合に <info>true</info> を、失敗した場合に <info>false</info> を返します。

<comment>See Also:</comment>
   * <strong>sapi_windows_generate_ctrl_event()</strong>


id: sapi_windows_vt100_support
type: function
doc:
<comment>Description:</comment>
  Windows コンソールの出力バッファに関連付けられたストリームのVT100サポート状況を取得/設定する
  
  <strong>$enable</strong> が省略されるか、<info>null</info> の場合、 この関数は <strong>$stream</strong> の VT100 制御コードが有効になっている場合
  に <info>true</info> を返します。 無効になっている場合 <info>false</info> を返します。
  
  <strong>$enable</strong> が指定され、<info>bool</info> の場合、 この関数は <strong>$stream</strong> の VT100 の機能を 有効/無効 にしようとしま
  す。 VT100 の機能が無事有効(または無効)にできた場合、この関数は <info>true</info> を返します。 失敗した場合
  <info>false</info> を返します。
  
  起動時に、PHP は <info>STDOUT</info>/<info>STDERR</info> の VT100 の機能を有効にしようとします。これらのストリームがファイル
  にリダイレクトされると、VT100 の機能は有効にならないかもしれません。
  
  VT100 のサポートが有効な場合、VT100 のターミナルで有効な制御シーケンスが使えます。 これによって、
  ターミナルの出力を変更できます。Windows では、 これらの制御シーケンスは Console Virtual Terminal
  Sequence と呼ばれています。
  
  この関数は、Windows 10 API で実装されている <info>ENABLE_VIRTUAL_TERMINAL_PROCESSING</info> フラグを使います。
  よって、古いWindowsバージョンでは VT100の機能は有効にならないかもしれません。

<comment>Param:</comment>
  <info>resource</info>   <strong>$stream</strong>  この関数で操作するストリーム
  <info>bool|null</info>  <strong>$enable</strong>  <info>bool</info> を指定すると、 (<info>true</info> の場合) VT100の機能が有効になり、 (<info>false</info> の場合) 無
                      効になります。

<comment>Return:</comment>
  <info>bool</info>  <strong>$enable</strong> が省略されるか、<info>null</info> の場合、 VT100 の機能が有効になっている場合に <info>true</info> を返します。
        無効になっている場合 <info>false</info> を返します。
        
        <strong>$enable</strong> に <info>bool</info> を指定すると、 成功した場合に <info>true</info> を、失敗した場合に <info>false</info> を返します。


id: scandir
type: function
doc:
<comment>Description:</comment>
  指定されたパスのファイルとディレクトリのリストを取得する
    
  
  <strong>$directory</strong> 内のファイルおよびディレクトリを 配列で返します。

<comment>Param:</comment>
  <info>string</info>         <strong>$directory</strong>      調べるディレクトリ。
  <info>int</info>            <strong>$sorting_order</strong>  デフォルトでは、ソート順はアルファベット昇順です。 オプションの
                                 <strong>$sorting_order</strong> に <info>SCANDIR_SORT_DESCENDING</info> を設定した場合、 ソート順
                                 はアルファベット降順になります。 <info>SCANDIR_SORT_NONE</info> を設定すると、
                                 結果をソートせずに返します。
  <info>resource|null</info>  <strong>$context</strong>        <strong>$context</strong> パラメータの説明については、 マニュアルのストリーム を参照
                                 ください。

<comment>Return:</comment>
  <info>array|false</info>  成功した場合にファイル名の配列、失敗した場合に <info>false</info> を返します。 <strong>$directory</strong> がディレ
               クトリではない場合は、 <info>false</info> を返し、<info>E_WARNING</info> レベルのエラーを 発行します。

<comment>See Also:</comment>
   * <strong>opendir()</strong>
   * <strong>readdir()</strong>
   * <strong>glob()</strong>
   * <strong>is_dir()</strong>
   * <strong>sort()</strong>


id: scoutapm_get_calls
type: function
doc:
<comment>Description:</comment>
  収集する処理が呼ばれた情報の一覧を返す
  
  <strong>scoutapm_get_calls()</strong> が最後に呼び出された後から行われた、 収集対象の関数が呼ばれた全ての情報のリス
  トを返します。 この関数が呼ばれるごとに、リストはクリアされます。

<comment>Return:</comment>
  <info>array</info>  <strong>scoutapm_get_calls()</strong> は、 収集対象の関数に対する、全ての記録された呼び出しのリストを配列と
         して返します。


id: scoutapm_list_instrumented_functions
type: function
doc:
<comment>Description:</comment>
  scoutapm がデータを収集する関数の一覧
  
  この拡張モジュールがデータを収集する関数の一覧を返します。

<comment>Return:</comment>
  <info>array</info>  <strong>scoutapm_list_instrumented_functions()</strong> は 拡張モジュールが現在のインストールで収集できる、
         全ての関数のリストを含んだ配列を返します。


id: seaslog_get_author
type: function
doc:
<comment>Description:</comment>
  Get SeasLog author.

<comment>Return:</comment>
  <info>string</info>  Return SeasLog author as string.


id: seaslog_get_version
type: function
doc:
<comment>Description:</comment>
  Get SeasLog version.

<comment>Return:</comment>
  <info>string</info>  Return SeasLog version (SEASLOG_VERSION) as string.


id: sem_acquire
type: function
doc:
<comment>Description:</comment>
  セマフォを得る
  
  <strong>sem_acquire()</strong> はデフォルトで、(必要な場合) セマフォが確保できるまでブロックします。 既に確保されて
  いるセマフォを得ようとするプロセスは、 セマフォの獲得により max_aquire 値を超える場合、 永久にブ
  ロックされます。
  
  リクエスト処理の後、プロセスにより獲得された全てのセマフォのうち、 明示的に開放されていないものが
  自動的に開放され、警告が表示されます。

<comment>Param:</comment>
  <info>SysvSemaphore</info>  <strong>$semaphore</strong>     <strong>$semaphore</strong> はセマフォのリソースで、 <strong>sem_get()</strong> によって得られます。
  <info>bool</info>           <strong>$non_blocking</strong>  セマフォが確保できるまでプロセスを待たせたくない場合に指定します。
                                <info>true</info> にすると、セマフォをその場で確保できなかった場合に、 この関数は
                                即時に <info>false</info> を返します。

<comment>Return:</comment>
  <info>bool</info>  成功した場合に <info>true</info> を、失敗した場合に <info>false</info> を返します。

<comment>See Also:</comment>
   * <strong>sem_get()</strong>
   * <strong>sem_release()</strong>


id: sem_get
type: function
doc:
<comment>Description:</comment>
  セマフォ ID を得る
  
  <strong>sem_get()</strong> は、 System V セマフォを指定したキーでアクセスするために使用可能な ID を返します。
  
  同じキーで <strong>sem_get()</strong> を 2 度コールした場合、 別のセマフォ ID が返されます。 しかし、どちらの ID も
  同じそのセマフォをアクセスします。
  
  <strong>$key</strong> に <return>0</return> を指定すると、 <strong>sem_get()</strong> が呼び出される度に新しい非公開のセマフォが作られます。

<comment>Param:</comment>
  <info>int</info>   <strong>$key</strong>           
  <info>int</info>   <strong>$max_acquire</strong>   同時にセマフォを得ることが可能なプロセス数を <strong>$max_acquire</strong> にセットします。
  <info>int</info>   <strong>$permissions</strong>   セマフォのパーミッション。 実際には、この値はプロセスが現在そのセマフォに付随
                       している 唯一のプロセスであることがわかった場合にのみセットされます。
  <info>bool</info>  <strong>$auto_release</strong>  リクエストの終了時に自動的にセマフォを開放するかどうかを指定します。

<comment>Return:</comment>
  <info>SysvSemaphore|false</info>  成功した場合に正のセマフォ ID、エラー時には <info>false</info> を返します。

<comment>See Also:</comment>
   * <strong>sem_acquire()</strong>
   * <strong>sem_release()</strong>
   * <strong>ftok()</strong>


id: sem_release
type: function
doc:
<comment>Description:</comment>
  セマフォを解放する
  
  <strong>sem_release()</strong> は、そのセマフォが コール元のプロセスにより現在確保されている場合、解放します。 そう
  でない場合、警告が表示されます。
  
  セマフォを解放した後、再び確保するには、<strong>sem_acquire()</strong> をコールします。

<comment>Param:</comment>
  <info>SysvSemaphore</info>  <strong>$semaphore</strong>  <strong>sem_get()</strong> が返すセマフォ。

<comment>Return:</comment>
  <info>bool</info>  成功した場合に <info>true</info> を、失敗した場合に <info>false</info> を返します。

<comment>See Also:</comment>
   * <strong>sem_get()</strong>
   * <strong>sem_acquire()</strong>


id: sem_remove
type: function
doc:
<comment>Description:</comment>
  セマフォを削除する
  
  <strong>sem_remove()</strong> は、指定したセマフォを削除します。
  
  セマフォを削除した後、そのセマフォにはもうアクセスできません。

<comment>Param:</comment>
  <info>SysvSemaphore</info>  <strong>$semaphore</strong>  <strong>sem_get()</strong> が返すセマフォ。

<comment>Return:</comment>
  <info>bool</info>  成功した場合に <info>true</info> を、失敗した場合に <info>false</info> を返します。

<comment>See Also:</comment>
   * <strong>sem_get()</strong>
   * <strong>sem_release()</strong>
   * <strong>sem_acquire()</strong>


id: serialize
type: function
doc:
<comment>Description:</comment>
  値の保存可能な表現を生成する
  
  値の保存可能な表現を生成します。
  
  型や構造を失わずに PHP の値を保存または渡す際に有用です。
  
  シリアル化された文字列を PHP の値に戻すには、 <strong>unserialize()</strong> を使用してください。

<comment>Param:</comment>
  <info>mixed</info>  <strong>$value</strong>  シリアル化する値。 <strong>serialize()</strong> は、<info>resource</info> および一部の <info>object</info> 以外のすべての型を
                 処理します。（下記の注を参照ください） 自分自身への参照を含む配列を <strong>serialize()</strong> す
                 ることも可能です。 シリアル化した配列/オブジェクト内の 循環参照も保存されます。その
                 他の参照は失われます。
                 
                 PHP は、シリアル化の前にまずメンバ関数 __serialize() または __sleep() のコールを試
                 みます。ここで、シリアル化の前のオブジェクトの後始末処理 などを行います。同様に、
                 <strong>unserialize()</strong> で オブジェクトを復元した際にはメンバ関数 __unserialize() または
                 __wakeup() がコールされます。
                 
                 オブジェクトの private メンバは、メンバ名の前にクラス名がつきます。 また protected
                 メンバはメンバ名の前に '*' がつきます。 前に付加されるこれらの値の前後には null バ
                 イトがついています。

<comment>Return:</comment>
  <info>string</info>  <strong>$value</strong> の保存可能なバイトストリーム表現を含む文字列を返します。
          
          これはバイナリ文字列であり、null バイトを含む可能性もあることに注意しましょう。 保存したり
          利用したりするときも、null バイトが含まれることを想定しておかないといけません。 たとえば、
          <strong>serialize()</strong> の出力をデータベースに格納するときには、 通常は CHAR 型や TEXT 型ではなく BLOB
          型を使わないといけません。

<comment>See Also:</comment>
   * <strong>unserialize()</strong>
   * <strong>var_export()</strong>
   * <strong>json_encode()</strong>
   * オブジェクトのシリアル化
   * __sleep()
   * __wakeup()
   * __serialize()
   * __unserialize()


id: session_abort
type: function
doc:
<comment>Description:</comment>
  session 配列の変更を破棄してセッションを終了します
  
  <strong>session_abort()</strong> は、データを保存せずにセッションを終了します。 したがって、セッション・データの元
  の値が保持されます。

<comment>Return:</comment>
  <info>bool</info>  成功した場合に <info>true</info> を、失敗した場合に <info>false</info> を返します。

<comment>See Also:</comment>
   * $_SESSION
   * session.auto_start 構成ディレクティブ
    
   * <strong>session_start()</strong>
   * <strong>session_reset()</strong>
   * <strong>session_commit()</strong>


id: session_cache_expire
type: function
doc:
<comment>Description:</comment>
  現在のキャッシュの有効期限を取得/設定する
  
  <strong>session_cache_expire()</strong> は現在の <return>session.cache_expire</return> の設定を返します。
  
  リクエストがあった時点で、キャッシュの有効期限は session.cache_expire で設定されたデフォルト値にリ
  セットされます。 そのため、すべてのリクエストにおいて (そして<strong>session_start()</strong> をコールする前に)
  <strong>session_cache_expire()</strong> をコールする必要があります。

<comment>Param:</comment>
  <info>int|null</info>  <strong>$value</strong>  <strong>$value</strong> が指定され、<info>null</info> でない場合、 現在のキャッシュの有効期限は、 <strong>$value</strong> で置
                    換されます。
                    
                    <return>session.cache_limiter</return>が <return>nocache</return>以外の値にセットされている場合にのみ <strong>$value</strong>が有効
                    となります。
                    
                    <return>session.cache_limiter</return>が <return>nocache</return>以外の値にセットされている場合にのみ <strong>$value</strong>が有効
                    となります。

<comment>Return:</comment>
  <info>int|false</info>  <return>session.cache_expire</return> の現在の設定を返します。 戻り値は分単位で、デフォルトは 180 です。
             値の変更に失敗した場合は、<info>false</info> を返します。

<comment>See Also:</comment>
   * session.cache_expire
   * session.cache_limiter
   * <strong>session_cache_limiter()</strong>


id: session_cache_limiter
type: function
doc:
<comment>Description:</comment>
  現在のキャッシュリミッタを取得または設定する
  
  <strong>session_cache_limiter()</strong> は、 現在のキャッシュリミッタの名前を返します。
  
  キャッシュリミッタは、クライアントに送信されるキャッシュ制御用の HTTPヘッダを制御します。これらの
  ヘッダは、ページの内容をクライアントやプロキシがキャッシュ する規則を定義します。例えば、キャッ
  シュリミッタを <return>nocache</return>に設定した場合、クライアント/プロキシのキャッ シュは無効になります。しかし、
  <return>public</return>の場合は、 キャッシュを許可します。<return>private</return>と設定すること も可能で、この場合、プロキシが
  キャッシュすることは許可しませんが クライアントがキャッシュすることは許可されます。
  
  <return>private</return>モードにおいて、Expireヘッダがクライア ントに送信されます。これは、Mozilla のようないくつか
  のブラウザを混乱させます。これを避けるには、 <return>private_no_expire</return>モードを使用してください。 このモー
  ドでは、<return>Expire</return>ヘッダはクライアントに送信されません。
  
  キャッシュリミッタを <return>''</return> にすると、 キャッシュヘッダの自動送信を完全に無効化します。
  
  キャッシュリミッタは、リクエスト開始時に <return>session.cache_limiter</return>に保存されたデフォルト値 にリセット
  されます。つまり、各リクエスト毎に(アウトプットバッファ が無効な場合は、<strong>session_start()</strong>がコールさ
  れる 前に) <strong>session_cache_limiter()</strong>をコールする必要 があります。

<comment>Param:</comment>
  <info>string|null</info>  <strong>$value</strong>  <strong>$value</strong> が指定され、<info>null</info> でない場合、 現在のキャッシュリミッタは新しい値に変更
                       されます。

<comment>Return:</comment>
  <info>string|false</info>  現在のキャッシュリミッタの名前を返します。 値の変更に失敗した場合は、<info>false</info> を返しま
                す。

<comment>See Also:</comment>
   * session.cache_limiter


id: session_commit
type: function
doc:
<comment>Description:</comment>
  session_write_close のエイリアス
  
  この関数は次の関数のエイリアスです。 <strong>session_write_close()</strong>.


id: session_create_id
type: function
doc:
<comment>Description:</comment>
  新しいセッションIDを作成する
  
  <strong>session_create_id()</strong> 関数は、 現在のセッションのための新しいセッションIDを作成するのに使われます。
  この関数は、衝突しないセッションIDを返します。
  
  セッションがアクティブでなければ、衝突しているかどうかのチェックは省略されます。
  
  php.ini の設定に従って、セッションIDは作成されます。
  
  重要なのは、あなたの Webサーバーが使っているものと同じユーザIDを、 GC タスクのスクリプトで使うこと
  が重要です。 そうしないと、特にファイルの保存ハンドラでパーミッションの問題が起こるかもしれませ
  ん。

<comment>Param:</comment>
  <info>string</info>  <strong>$prefix</strong>  <strong>$prefix</strong> が指定されると、 新しいセッションIDの前に、 <strong>$prefix</strong> が付きます。 セッショ
                   ンIDに全ての文字が許されているわけではありません。 <return>a-z A-Z 0-9 , (コンマ) そして
                   - (マイナス)</return> が許可されています。

<comment>Return:</comment>
  <info>string|false</info>  <strong>session_create_id()</strong> 関数は、 現在のセッションのための、衝突しない新しいセッション
                IDを返します。 セッションがアクティブでない時に使われると、 衝突しているかどうかの
                チェックは省略されます。 失敗した場合は、<info>false</info> を返します。

<comment>See Also:</comment>
   * <strong>session_regenerate_id()</strong>
   * <strong>session_start()</strong>
   * session.use_strict_mode
   * SessionHandler::create_sid


id: session_decode
type: function
doc:
<comment>Description:</comment>
  セッションエンコードされた文字列からセッションデータをデコードする
  
  <strong>session_decode()</strong> は、 <strong>$data</strong> のセッションデータをデコードし、 スーパーグローバル $_SESSION にその結
  果を格納します。
  
  デフォルトのアンシリアライズの方法は PHP が内部的に実装しているものであり、 <strong>unserialize()</strong> とは違い
  ます。 シリアライズの方法は、session.serialize_handler で設定できます。

<comment>Param:</comment>
  <info>string</info>  <strong>$data</strong>  エンコードされたデータ。

<comment>Return:</comment>
  <info>bool</info>  成功した場合に <info>true</info> を、失敗した場合に <info>false</info> を返します。

<comment>See Also:</comment>
   * <strong>session_encode()</strong>
   * session.serialize_handler


id: session_destroy
type: function
doc:
<comment>Description:</comment>
  セッションに登録されたデータを全て破棄する
  
  <strong>session_destroy()</strong>は、現在のセッションに 関連づけられたすべてのデータを破棄します。この関数は、
  セッションに関するグローバル変数を破棄しません。 また、セッションクッキーを破棄しません。 セッショ
  ン変数の利用を再開するには <strong>session_start()</strong> をコールする必要があります。
  
  通常のコードでは、<strong>session_destroy()</strong> を呼ぶ必要はありません。 セッションデータを破棄するよりも、
  $_SESSION 配列をクリーンアップしてください。
  
  セッションを切断するには、 セッション ID の割り当ても解除する必要があります。セッション ID の受け
  渡しに クッキーが使用されている場合（デフォルト）には、セッションクッキーも 削除されなければなりま
  せん。 そのために <strong>setcookie()</strong> が利用できます。
  
  session.use_strict_mode が有効になっている場合、 古くなった セッションID のクッキーを削除する必要
  はありません。 なぜなら、セッションモジュールはセッションIDに紐付いたデータがないとき、 セッション
  ID のクッキーを受け入れないからです。 全てのサイトで、 session.use_strict_mode を有効にすることを
  推奨します。
  
  すぐにセッションを削除してしまうと、 望まない結果が起こる可能性があります。 並列にリクエストが行わ
  れたときに、 他のリクエストの接続は突然データが消えたように見えるかもしれません。 たとえば、
  JavaScript または/もしくは  URLリンクからのリクエストが同時に実行された場合です。
  
  現在のセッションモジュールは、空のセッションIDを受け入れません。 しかし、すぐにセッションを削除し
  てしまうと、 クライアント(ブラウザ)サイドとの競合によって、 空のセッションIDクッキーが発生するかも
  しれません。 これにより、不必要なのにクライアント側が たくさんのセッションIDを作ってしまうことにな
  ります。
  
  こうした事象を防ぐためには、 $_SESSION に削除時のタイムスタンプを設定し、 それより後のアクセスを拒
  否するようにしなければなりません。 もしくは、アプリケーションが同時に 複数のリクエストを受け付けな
  いようにすることです。 同じことは、<strong>session_regenerate_id()</strong> 関数にも当てはまります。

<comment>Return:</comment>
  <info>bool</info>  成功した場合に <info>true</info> を、失敗した場合に <info>false</info> を返します。

<comment>See Also:</comment>
   * session.use_strict_mode
   * <strong>session_reset()</strong>
   * <strong>session_regenerate_id()</strong>
   * <strong>unset()</strong>
   * <strong>setcookie()</strong>


id: session_encode
type: function
doc:
<comment>Description:</comment>
  現在のセッションデータを、セッションエンコードされた文字列に変換する
  
  <strong>session_encode()</strong> は、 現在のセッションの内容をシリアライズした文字列を返します． 現在のセッション
  の内容は、スーパーグローバル $_SESSION から取得します。
  
  デフォルトのアンシリアライズの方法は PHP が内部的に実装しているものであり、 <strong>unserialize()</strong> とは違い
  ます。 シリアライズの方法は、session.serialize_handler で設定できます。

<comment>Return:</comment>
  <info>string|false</info>  現在のセッションの内容をエンコードしたものを返します。 失敗した場合に <info>false</info> を返しま
                す

<comment>See Also:</comment>
   * <strong>session_decode()</strong>
   * session.serialize_handler


id: session_gc
type: function
doc:
<comment>Description:</comment>
  セッションデータのガベージコレクションを実行する
  
  <strong>session_gc()</strong> は、セッションデータの GC (ガベージコレクション) を実行するために使用されます。
  PHPは、デフォルトで確率ベースのセッション GC を行います。
  
  確率ベースの GC は多少は機能しますが、いくつかの問題があります。 1) トラフィックが少ないサイトの
  セッションデータは、優先期間内に削除されないことがあります。 2) トラフィックの多いサイトでは、GC
  が頻繁になる可能性があります。 3) ユーザーの要求の際に GC が実行され、ユーザーは GC 遅延を感じま
  す。
  
  そのため、例えば UNIX 系のシステムでは「cron」を使用して、 本稼動システムに対して定期的に GC を実
  行することをお勧めします。 session.gc_probability を 0 に設定して、 確率ベースのGCを無効にしてくだ
  さい。

<comment>Return:</comment>
  <info>int|false</info>  <strong>session_gc()</strong> は、 成功時には削除されたセッションデータの数、 失敗時には <info>false</info> を返しま
             す。
             
             古いセーブハンドラは、削除されたセッションデータの数を返さず、成功/失敗フラグのみを返し
             ます。 この場合、実際に削除されたデータにかかわらず、削除されたセッションデータの数は 1
             になります。

<comment>See Also:</comment>
   * <strong>session_start()</strong>
   * <strong>session_destroy()</strong>
   * session.gc_probability


id: session_get_cookie_params
type: function
doc:
<comment>Description:</comment>
  セッションクッキーのパラメータを得る
  
  セッションクッキーのパラメータを取得します。

<comment>Return:</comment>
  <info>array</info>  現在のセッションクッキーの情報を配列として返します。 この配列には次のような項目が含まれてい
         ます。 "lifetime" -  クッキーの生存期間(lifetime) "path" -  情報が保存されている場所のパス
         "domain" -  クッキーのドメイン "secure" -  クッキーはセキュアな接続でのみ送信されます。
         "httponly" - クッキーは HTTP を通してのみアクセス可能となります。 "samesite" - クロスドメイ
         ン間で送信されるクッキーを制御します。
         
         "lifetime" -  クッキーの生存期間(lifetime)
         
         "path" -  情報が保存されている場所のパス
         
         "domain" -  クッキーのドメイン
         
         "secure" -  クッキーはセキュアな接続でのみ送信されます。
         
         "httponly" - クッキーは HTTP を通してのみアクセス可能となります。
         
         "samesite" - クロスドメイン間で送信されるクッキーを制御します。

<comment>See Also:</comment>
   * session.cookie_lifetime
   * session.cookie_path
   * session.cookie_domain
   * session.cookie_secure
   * session.cookie_httponly
   * session.cookie_samesite
   * <strong>session_set_cookie_params()</strong>


id: session_id
type: function
doc:
<comment>Description:</comment>
  現在のセッション ID を取得または設定する
  
  <strong>session_id()</strong> は現在のセッション ID を取得 または設定するために使用されます。
  
  現在の名前とセッション ID を、URL に追加可能な文字列として取得する ために定数 <info>SID</info> も使用できます。
  セッションハンドリング も参照ください。

<comment>Param:</comment>
  <info>string|null</info>  <strong>$id</strong>  <strong>$id</strong> が指定され、<info>null</info> でない場合、現在の セッション ID を置換します。その際、 こ
                    の関数は <strong>session_start()</strong> より前にコールされている必要があります。 セッションハン
                    ドラによっては、セッション ID として使用できる文字に 制限がある場合があります。
                    例えば、ファイルによるセッションハンドラでは セッション ID として使える文字は
                    <return>a-z A-Z 0-9 , (カンマ) そして - (マイナス)</return> に限られます!
                    
                    セッション保持にクッキーを使用している場合、 <strong>session_id()</strong> において <strong>$id</strong> 引数を指
                    定すると、 現在のセッション ID がセットされるものと まったく同一であるかどうかに
                    関わらず、 <strong>session_start()</strong> が呼び出される際に常に新しいクッキーが送信されます。

<comment>Return:</comment>
  <info>string|false</info>  <strong>session_id()</strong> は現在のセッションのセッション ID を返します。 現在のセッションが存在し
                ない (現在のセッション ID が存在しない) 場合は空文字列 (<return>""</return>) を返します。 失敗時に
                は、<info>false</info> を返します。

<comment>See Also:</comment>
   * <strong>session_regenerate_id()</strong>
   * <strong>session_start()</strong>
   * <strong>session_set_save_handler()</strong>
   * session.save_handler


id: session_module_name
type: function
doc:
<comment>Description:</comment>
  現在のセッションモジュールを取得または設定する
  
  <strong>session_module_name()</strong>は、 現在のセッションモジュールの名前を返します。 これは session.save_handler
  としても知られています。

<comment>Param:</comment>
  <info>string|null</info>  <strong>$module</strong>  <strong>$module</strong> が指定され、<info>null</info> でない場合、 そのモジュールを代わりに使用します。
                        このパラメーターに <return>"user"</return>  を渡すことは禁止されています。 ユーザー定義のセッ
                        ションハンドラを設定するには、この関数のかわりに <strong>session_set_save_handler()</strong>
                        関数 を呼び出さなければなりません。

<comment>Return:</comment>
  <info>string|false</info>  現在のセッションモジュールの名前を返します。 失敗した場合に <info>false</info> を返します


id: session_name
type: function
doc:
<comment>Description:</comment>
  現在のセッション名を取得または設定する
  
  <strong>session_name()</strong> は、現在のセッション名を返します。 <strong>$name</strong> を渡すと、 <strong>session_name()</strong> はセッション名を
  上書きして 元の セッション名を返します。
  
  新しいセッションの <strong>$name</strong> が与えられると、 <strong>session_name()</strong> 関数は HTTPクッキー を 変更します(そし
  て、<return>session.transid</return> が有効なときは、出力内容も変更します)。 HTTPクッキー が一度送信されると、
  <strong>session_name()</strong> 関数はエラーになります。 <strong>session_name()</strong> 関数は、 セッションを適切に動作させるために
  は、 <strong>session_start()</strong> の前に呼び出さなければなりません。
  
  リクエストが開始された際にセッション名はリセットされ、 <return>session.name</return> に保存されたデフォルト値に戻り
  ます。 よって、各リクエスト毎に(そして <strong>session_start()</strong> をコールする前に) <strong>session_name()</strong> をコールす
  る必要があります。

<comment>Param:</comment>
  <info>string|null</info>  <strong>$name</strong>  セッションの名前を参照します。これは、クッキーや URL (例: <return>PHPSESSID</return>) で使われ
                      ます。 セッション名は英数字のみで構成されている必要があり、また、 短く、その内
                      容が分かるようなものである必要があります (これは、クッキー警告を有効にしている
                      ユーザー用です)。 <strong>$name</strong> が指定され、<info>null</info> でない場合、 現在のセッションの名前
                      が、指定された値に置き換えられます。
                      
                       セッション名は数字だけで構成することはできません。 少なくとも文字がひとつ以上
                      現れる必要があります。そうでない場合、 新規セッション ID が毎回生成されます。
                      
                      セッション名は数字だけで構成することはできません。 少なくとも文字がひとつ以上
                      現れる必要があります。そうでない場合、 新規セッション ID が毎回生成されます。

<comment>Return:</comment>
  <info>string|false</info>  現在のセッションの名前を返します。 <strong>$name</strong> を渡すと、 <strong>session_name()</strong> はセッション名を
                上書きして 元のセッション名を返します。 失敗した場合に <info>false</info> を返します

<comment>See Also:</comment>
   * 
     設定ディレクティブ session.name
    


id: session_regenerate_id
type: function
doc:
<comment>Description:</comment>
  現在のセッションIDを新しく生成したものと置き換える
    
  
  <strong>session_regenerate_id()</strong> は現在のセッションIDを 新しいものと置き換えます。その際、現在のセッション
  情報は維持されます。
  
  session.use_trans_sid が有効な場合は、 <strong>session_regenerate_id()</strong> を呼んでから出力を始めないといけま
  せん。 それ以前の出力には、古いセッション ID が使われます。
  
  現在の session_regenerate_id は、不安定なネットワークをうまく扱えません。 たとえば、モバイルネット
  ワークや WiFi ネットワークです。 よって、 session_regenerate_id を 呼ぶことで、セッションの消失を
  経験するかもしれません。
  
  すぐに古いセッションデータを破棄すべきではありませんが、 古いセッションID のタイムスタンプと、 ア
  クセス制御は破棄すべきでしょう。 さもないと、ページへの同時アクセスによって、 状態の不整合が発生し
  たり、セッションが失われたり、 クライアント(ブラウザ) 側のレースコンディションが発生したり、 不必
  要なセッションIDをたくさん作らなければならなくなるかもしれません。 セッションデータをすぐに破棄し
  てしまうと、 セッションハイジャックの検出だけでなく、 防止もできなくしてしまいます。

<comment>Param:</comment>
  <info>bool</info>  <strong>$delete_old_session</strong>  関連付けられた古いセッションを削除するかどうか。 削除による競合を防いだ
                             り、セッションハイジャックを 検出/防ぐ 必要がある場合には、古いセッショ
                             ンを削除すべきではありません。

<comment>Return:</comment>
  <info>bool</info>  成功した場合に <info>true</info> を、失敗した場合に <info>false</info> を返します。

<comment>See Also:</comment>
   * <strong>session_id()</strong>
   * <strong>session_create_id()</strong>
   * <strong>session_start()</strong>
   * <strong>session_destroy()</strong>
   * <strong>session_reset()</strong>
   * <strong>session_name()</strong>


id: session_register_shutdown
type: function
doc:
<comment>Description:</comment>
  セッションのシャットダウン関数
  
  <strong>session_write_close()</strong> をシャットダウン関数として登録します。

<comment>Return:</comment>
  <info>void</info>  値を返しません。


id: session_reset
type: function
doc:
<comment>Description:</comment>
  session 配列を元の値で再初期化します
  
  <strong>session_reset()</strong> は、セッション・ストレージに保存されていた元の値でセッションを再初期化します。 こ
  の関数は、$_SESSION 内の変更を破棄しますが、そうするためにアクティブなセッションが必要です。

<comment>Return:</comment>
  <info>bool</info>  値を返しません。

<comment>See Also:</comment>
   * $_SESSION
   * session.auto_start 構成ディレクティブ
    
   * <strong>session_start()</strong>
   * <strong>session_abort()</strong>
   * <strong>session_commit()</strong>


id: session_save_path
type: function
doc:
<comment>Description:</comment>
  現在のセッションデータ保存パスを取得または設定する
  
  <strong>session_save_path()</strong> は、 現在のセッションデータ保存パスを返します。

<comment>Param:</comment>
  <info>string|null</info>  <strong>$path</strong>  セッションデータのパス。これに <info>null</info> でない値を指定すると、 データを保存するパ
                      スが変更されます。ただしそのためには <strong>session_start()</strong> がコールされる前に
                      <strong>session_save_path()</strong> がコールされている必要があります。
                      
                       いくつかのオペレーションシステムでは、多くの小さなファイルを効率的に 処理する
                      ファイルシステム上にパスを指定することが望ましいです。 例えば、Linux では
                      ext2fs よりも reiserfs の方が性能面でより 優れています。
                      
                      いくつかのオペレーションシステムでは、多くの小さなファイルを効率的に 処理する
                      ファイルシステム上にパスを指定することが望ましいです。 例えば、Linux では
                      ext2fs よりも reiserfs の方が性能面でより 優れています。

<comment>Return:</comment>
  <info>string|false</info>  現在のデータ保存先ディレクトリのパスを返します。 失敗した場合に <info>false</info> を返します

<comment>See Also:</comment>
   * 
     設定ディレクティブ session.save_path
    


id: session_set_cookie_params
type: function
doc:
<comment>Description:</comment>
  セッションクッキーパラメータを設定する
  
  PHP 7.3.0 以降で使える代替のシグネチャ:
  
  ファイル php.ini で定義されたクッキーパラメータを設定します。 この関数の効果が持続するのは、スクリ
  プトの実行が終了するまでです。 したがって、リクエスト毎や <strong>session_start()</strong> がコールされる前に
  <strong>session_set_cookie_params()</strong> をコールする必要があります。
  
  この関数は、PHP の ini 設定の値を実行時に上書きします。値の取得には <strong>ini_get()</strong> が使えます。

<comment>Param:</comment>
  <info>int</info>          <strong>$lifetime_or_options</strong>  最初のシグネチャを使う場合、セッションクッキーの 有効期限。秒数
                                     で定義します。
                                     
                                     二番目のシグネチャを使う場合、 以下に示すキーを持つことができる
                                     連想配列です。 <return>lifetime</return>, <return>path</return>, <return>domain</return>, <return>secure</return>, <return>httponly</return> および
                                     <return>samesite</return>.
                                      対応する値は、キーと同じ名前のパラメータで説明されているものと
                                     同じ意味です。 <return>samesite</return> 要素の値は、 <return>Lax</return> または <return>Strict</return> になるは
                                     ずです。
                                      上記の許可されているオプションがいずれも設定されなかった場合、
                                     デフォルト値は、明示的なパラメーターのデフォルト値と同じです。
                                     <return>samesite</return> 要素が省略されると、SameSite クッキー属性は設定されま
                                     せん。
  <info>string|null</info>  <strong>$path</strong>                 クッキーが動作するドメイン上の パス。単一のスラッシュ ('/') を
                                     指定すると、ドメイン上のすべてのパスで動作します。
  <info>string|null</info>  <strong>$domain</strong>               クッキーの ドメイン。たとえば 'www.php.net'。 すべてのサブドメ
                                     インでクッキーを有効にしたい場合は、先頭にドットをつけて
                                     '.php.net' のようにします。
  <info>bool|null</info>    <strong>$secure</strong>               <info>true</info> の場合は、セキュア な接続の場合にのみクッキーを送信しま
                                     す。
  <info>bool|null</info>    <strong>$httponly</strong>             <info>true</info> の場合は、PHP でセッションクッキーを設定する際に httponly
                                     フラグの送信を試みます。

<comment>Return:</comment>
  <info>bool</info>  成功した場合に <info>true</info> を、失敗した場合に <info>false</info> を返します。

<comment>See Also:</comment>
   * session.cookie_lifetime
   * session.cookie_path
   * session.cookie_domain
   * session.cookie_secure
   * session.cookie_httponly
   * session.cookie_samesite
   * <strong>session_get_cookie_params()</strong>


id: session_set_save_handler
type: function
doc:
<comment>Description:</comment>
  ユーザー定義のセッション保存関数を設定する
  
  次のプロトタイプでも登録できます。
  
  <strong>session_set_save_handler()</strong> は、セッションに 関連するデータを保存および取得するために使用されるユー
  ザー定義の セッション保存関数を設定します。この関数は、PHP セッションにより 提供されるもの以外の保
  存方法を使用したい場合に有用です。 例えば、セッションデータをローカルデータベースに保存します。

<comment>Param:</comment>
  <info>object</info>    <strong>$sessionhandler</strong>     SessionHandlerInterface、 SessionIdInterface(オプション) または
                                SessionUpdateTimestampHandlerInterface を実装したクラス、たとえば
                                <class>SessionHandler</class> のインスタンスで、 これをセッションハンドラとして登録
                                する。
  <info>bool</info>      <strong>$register_shutdown</strong>  <strong>session_write_close()</strong> を <strong>register_shutdown_function()</strong> 関数として登録
                                するかどうか。
  <info>callable</info>  <strong>$open</strong>               以下のシグネチャを持つ callable:
                                <info>bool</info>open<info>string</info><strong>$savePath</strong><info>string</info><strong>$sessionName</strong>
                                
                                open コールバックはクラスのコンストラクタのようなもので、セッション
                                を開くときに実行されます。 セッションが自動で開始したり、あるいは手
                                動で <strong>session_start()</strong> で開始させたりするときに、最初に実行されるコー
                                ルバック関数がこれです。 成功した場合は <info>true</info>、失敗した場合は <info>false</info>
                                を返します。
  <info>callable</info>  <strong>$close</strong>              以下のシグネチャを持つ callable: <info>bool</info>close
                                
                                close コールバックはクラスのデストラクタのようなもので、write コール
                                バックがコールされた後で実行されます。 また、<strong>session_write_close()</strong>
                                がコールされたときにも実行されます。 成功した場合は <info>true</info>、失敗した場
                                合は <info>false</info> を返します。
  <info>callable</info>  <strong>$read</strong>               以下のシグネチャを持つ callable: <info>string</info>read<info>string</info><strong>$sessionId</strong>
                                
                                <strong>$read</strong> コールバックは、常にセッションエンコード (シリアライズ) された
                                文字列を返さなければなりません。何もデータを読み込まなかった場合は空
                                文字列を返します。
                                
                                このコールバックは、セッションが開始したときや <strong>session_start()</strong> が
                                コールされたときに PHP が内部的に実行します。 このコールバックを実行
                                する前に、PHP は <strong>$open</strong> コールバックを実行します。
                                
                                このコールバックが返す値は、 <strong>$write</strong> コールバックがストレージに渡した
                                形式とまったく同じシリアライズ形式でなければなりません。 返された値
                                を PHP が自動的にアンシリアライズして、スーパーグローバル $_SESSION
                                に格納します。データの形式は <strong>serialize()</strong> したものと似ていますが、実
                                際は違う形式であることに注意しましょう。 シリアライズの方法は ini 設
                                定 session.serialize_handler で指定します。
  <info>callable</info>  <strong>$write</strong>              以下のシグネチャを持つ callable:
                                <info>bool</info>write<info>string</info><strong>$sessionId</strong><info>string</info><strong>$data</strong>
                                
                                <strong>$write</strong> コールバックは、セッションの保存や終了が必要となったときに
                                コールされます。 このコールバックが受け取るのは、現在のセッション ID
                                とシリアライズ後のスーパーグローバル $_SESSION です。 PHP が内部で利
                                用するシリアライズ方法は、ini 設定 session.serialize_handler で指定
                                します。
                                
                                このコールバックに渡されたシリアライズ後のセッションデータを、 渡さ
                                れたセッション ID に対応させて格納しなければなりません。 このデータ
                                を取得した <strong>$read</strong> コールバックは、 <strong>$write</strong> コールバックに最初に渡され
                                たのとまったく同じ値を返さなければなりません。
                                
                                このコールバックが実行されるのは、PHP のスクリプトが終了するときか、
                                あるいは明示的に <strong>session_write_close()</strong> がコールされたときです。この
                                関数の実行後には、PHP が内部的に <strong>$close</strong> コールバックを実行することに
                                注意しましょう。  "write" ハンドラは、出力ストリームが閉じてから実行
                                されます。 したがって、"write" ハンドラ内でデバッグ出力を行っても、
                                それはブラウザに表示されません。 デバッグ出力が必要なら、それをファ
                                イルに書き出すようにしましょう。
                                
                                "write" ハンドラは、出力ストリームが閉じてから実行されます。 した
                                がって、"write" ハンドラ内でデバッグ出力を行っても、 それはブラウザ
                                に表示されません。 デバッグ出力が必要なら、それをファイルに書き出す
                                ようにしましょう。
  <info>callable</info>  <strong>$destroy</strong>            以下のシグネチャを持つ callable: <info>bool</info>destroy<info>string</info><strong>$sessionId</strong>
                                
                                このコールバックが実行されるのは、 <strong>session_destroy()</strong> あるいは
                                <strong>session_regenerate_id()</strong> (destroy パラメータを <info>true</info> にした場合) を実
                                行し、セッションを破棄した場合です。 成功した場合は <info>true</info>、失敗した場
                                合は <info>false</info> を返します。
  <info>callable</info>  <strong>$gc</strong>                 以下のシグネチャを持つ callable: <info>bool</info>gc<info>int</info><strong>$lifetime</strong>
                                
                                ガベージコレクタコールバックは PHP が内部で定期的に実行し、古いセッ
                                ションデータを破棄します。 実行頻度は session.gc_probability および
                                session.gc_divisor で設定します。 この関数に渡される有効期限の値は
                                session.gc_maxlifetime で設定できます。 成功した場合は <info>true</info>、失敗し
                                た場合は <info>false</info> を返します。
  <info>callable</info>  <strong>$create_sid</strong>         以下のシグネチャを持つ callable: <info>string</info>create_sid
                                
                                このコールバックは、新しいセッション ID が必要になったときに実行され
                                ます。 パラメータは不要です。戻り値は、使っているハンドラで有効な
                                セッション ID を表す文字列となります。
  <info>callable</info>  <strong>$validate_sid</strong>       以下のシグネチャを持つ callable: <info>bool</info>validate_sid<info>string</info><strong>$key</strong>
                                
                                このコールバックは、セッションが開始された場合に実行されます。 但
                                し、セッションID が渡され、 session.use_strict_mode  が有効な場合に
                                限ります。 <strong>$key</strong> は検証する セッションID を指定します。 渡されたID の
                                セッションが既に存在する場合、セッションID は有効です。 成功した場合
                                は <info>true</info>、失敗した場合は <info>false</info> を返します。
  <info>callable</info>  <strong>$update_timestamp</strong>   以下のシグネチャを持つ callable:
                                <info>bool</info>update_timestamp<info>string</info><strong>$key</strong><info>string</info><strong>$val</strong>
                                
                                このコールバックは、セッションが更新された時に実行されます。 <strong>$key</strong> は
                                セッションID、 <strong>$val</strong> はセッションデータを指定します。 成功した場合は
                                <info>true</info>、失敗した場合は <info>false</info> を返します。

<comment>Return:</comment>
  <info>bool</info>  成功した場合に <info>true</info> を、失敗した場合に <info>false</info> を返します。

<comment>See Also:</comment>
   * 
     設定ディレクティブ session.save_handler
    
   * 
     設定ディレクティブ session.serialize_handler
    
   * <strong>register_shutdown_function()</strong>
   * <strong>session_register_shutdown()</strong>
   * 
     手続き型の完全なリファレンス実装は
     save_handler.inc を参照ください。
    


id: session_start
type: function
doc:
<comment>Description:</comment>
  新しいセッションを開始、あるいは既存のセッションを再開する
  
  <strong>session_start()</strong> は、セッションを作成します。 もしくは、リクエスト上で GET, POST またはクッキーによ
  り渡されたセッション ID に基づき現在のセッションを復帰します。
  
  <strong>session_start()</strong> がコールされたりセッションが自動的に開始したりするときに、 PHP はセッションの open
  ハンドラおよび read ハンドラをコールします。 このハンドラとしては、デフォルトで組み込まれている保
  存ハンドラの他に PHP 拡張モジュールで提供されているもの (SQLite や Memcached など) も使えます。ま
  た、自作のハンドラを <strong>session_set_save_handler()</strong> で定義することもできます。 read コールバックは既存
  のセッションデータ (独自のシリアライズフォーマットで保存されているもの) を読み込み、 それを復元し
  て自動的にスーパーグローバル $_SESSION に格納します。
  
  名前付きのセッションを使用したい場合、 <strong>session_start()</strong> の前に <strong>session_name()</strong> をコールする必要があ
  ります。
  
  <strong>session_start()</strong> は、 session.use_trans_sid が有効の場合に URL 書換え用の内部出力ハンドラを登録しま
  す。
  
  ユーザーが <strong>ob_start()</strong> と共に <return>ob_gzhandler</return> または類似のものを使用している場合、 出力ハンドラの順番
  は正しく出力を行うために重要です。例えば、 セッション開始時にユーザーは <return>ob_gzhandler</return> を登録する必
  要があります。

<comment>Param:</comment>
  <info>array</info>  <strong>$options</strong>  オプションの連想配列を指定することができます。これは、現在設定されている セッショ
                   ンの設定ディレクティブ を上書きします。 連想配列のキーにはプレフィックス <return>session.</return>
                   を含めてはいけません。
                   
                   通常の設定ディレクティブ群に加えて、 <return>read_and_close</return> オプションを指定することもで
                   きます。 これを <info>true</info> にすると、セッションを読み込んだらその場ですぐにクローズしま
                   す。 セッションのデータを書き換えるつもりがない場合は、こうしておけば、意図せぬ
                   ロックを防げます。

<comment>Return:</comment>
  <info>bool</info>  この関数は、セッションが正常に開始した場合に <info>true</info>、それ以外の場合に <info>false</info> を返します。

<comment>See Also:</comment>
   * $_SESSION
   * 
     設定ディレクティブ session.auto_start
    
   * <strong>session_id()</strong>


id: session_status
type: function
doc:
<comment>Description:</comment>
  現在のセッションの状態を返す
  
  <strong>session_status()</strong> を使うと、現在のセッションの状態を取得できます。

<comment>Return:</comment>
  <info>int</info>  セッションが無効な場合は <info>PHP_SESSION_DISABLED</info>セッションが有効だけれどもセッションが存在しない
       場合は <info>PHP_SESSION_NONE</info>セッションが有効で、かつセッションが存在する場合は <info>PHP_SESSION_ACTIVE</info>
       
       セッションが無効な場合は <info>PHP_SESSION_DISABLED</info>
       
       セッションが有効だけれどもセッションが存在しない場合は <info>PHP_SESSION_NONE</info>
       
       セッションが有効で、かつセッションが存在する場合は <info>PHP_SESSION_ACTIVE</info>

<comment>See Also:</comment>
   * <strong>session_start()</strong>


id: session_unset
type: function
doc:
<comment>Description:</comment>
  全てのセッション変数を開放する
  
  関数 <strong>session_unset()</strong> は現在登録されている全てのセッション変数を開放します。

<comment>Return:</comment>
  <info>bool</info>  成功した場合に <info>true</info> を、失敗した場合に <info>false</info> を返します。


id: session_write_close
type: function
doc:
<comment>Description:</comment>
  セッションデータを書き込んでセッションを終了する
  
  現在のセッションを終了し、セッションデータを書き込みます。
  
  セッションデータは、<strong>session_write_close()</strong> をコールしなくても、スクリプト終了時に保存されます。しか
  し、 セッションデータは、同時書き込みを防ぐためにロックされるため、 ある時点であるセッションの処理
  ができるスクリプトは、1つだけです。 セッションでフレームセットを使用する場合、 このロックのために
  フレームがひとつずつロードされるような経験をするでしょう。 セッションへの全ての変更が行われるとす
  ぐにセッションを終了することにより、 全てのフレームのロードに要する時間を減らすことができます。

<comment>Return:</comment>
  <info>bool</info>  成功した場合に <info>true</info> を、失敗した場合に <info>false</info> を返します。

<comment>See Also:</comment>
   * <strong>session_register_shutdown()</strong>


id: set_error_handler
type: function
doc:
<comment>Description:</comment>
  ユーザー定義のエラーハンドラ関数を設定する
  
  スクリプトのエラー処理を行うユーザー関数 (<strong>$callback</strong>)を設定します。
  
  この関数は、実行時にカスタムのエラーハンドラを定義するために使います。 例えば、致命的なエラーの際
  にデータやファイルを消去する必要があるような アプリケーションや、ある条件のもとに
  (<strong>trigger_error()</strong>を使用して)エラーを発生する必要がある アプリケーションがこの場合にあたります。
  
  コールバック関数が <info>false</info> を返さない限り、<strong>$error_levels</strong> で指定した型のエラーでは PHP 標準のエラーハ
  ンドラが完全にバイパスされることに注意してください。 <strong>error_reporting()</strong> の設定にかかわらず、どのよ
  うな場合でも ユーザーが設定したエラーハンドラがコールされます。ただし、この場合でも ハンドラで
  <strong>error_reporting()</strong> の現在の値を読み込み、 それにあわせて適切に動作させることは可能です。
  
  ユーザーハンドラ関数は、必要に応じて <strong>exit()</strong> を コールすることで、スクリプトを停止させる責任がある
  ことにも注意しましょう。 エラーハンドラ関数がリターンした場合、エラーが発生した次の行から実行が継
  続されます。
  
  以下のエラータイプは、ユーザー定義の関数では扱えません。 <info>E_ERROR</info>, <info>E_PARSE</info>, <info>E_CORE_ERROR</info>,
  <info>E_CORE_WARNING</info>, <info>E_COMPILE_ERROR</info>, <info>E_COMPILE_WARNING</info>。これらは発生した場所に関係なく使えません。 ま
  た、<strong>set_error_handler()</strong> がコールされたファイルで発生した 大半の <info>E_STRICT</info> も、ユーザー定義の関数で
  は扱えません。
  
  (ファイルアップロードのように)スクリプトが実行される前にエラーが 発生した場合、カスタムエラーハン
  ドラはコールされません。 これは、その時点では登録されていないためです。

<comment>Param:</comment>
  <info>callable|null</info>  <strong>$callback</strong>      <info>null</info> を渡すと、ハンドラをデフォルトの状態に戻せます。 それ以外の場
                                合、次のシグネチャに従うコールバックを渡します:
                                
                                
                                <info>bool</info>handler<info>int</info><strong>$errno</strong><info>string</info><strong>$errstr</strong><info>string</info><strong>$errfile</strong><info>int</info><strong>$errline</strong><info>array</info><strong>$errcontext</strong><strong>$errno</strong>
                                最初のパラメータ <strong>$errno</strong> は、発生させる エラーのレベルが整数で渡され
                                ます。 <strong>$errstr</strong> 2 番目のパラメータ <strong>$errstr</strong> は、 エラーメッセージが文
                                字列で渡されます。 <strong>$errfile</strong> コールバックが第3引数 <strong>$errfile</strong> を受け入
                                れる場合、 エラーが発生したファイルの名前が文字列で渡されます。
                                <strong>$errline</strong> コールバックが第4引数 <strong>$errline</strong> を受け入れる場合、 エラーが
                                発生した行番号が整数で渡されます。 <strong>$errcontext</strong> コールバックが第5引数
                                <strong>$errcontext</strong> を受け入れる場合、 エラーが発生した場所のアクティブシン
                                ボルテーブルが配列で渡されます。 つまり、エラーが発生したスコープ内
                                でのすべての変数の内容を格納した 配列が <strong>$errcontext</strong> だということで
                                す。 ユーザーエラーハンドラは、決してエラーコンテキストを書き換えて
                                は いけません。  このパラメータは PHP 7.2.0 以降では 推奨されなくな
                                り、 PHP 8.0.0 で 削除されました。 この引数をデフォルト値以外に設定
                                すると、 ハンドラが呼び出された時に "too few arguments" エラーが発生
                                します。
                                
                                最初のパラメータ <strong>$errno</strong> は、発生させる エラーのレベルが整数で渡され
                                ます。
                                
                                2 番目のパラメータ <strong>$errstr</strong> は、 エラーメッセージが文字列で渡されま
                                す。
                                
                                コールバックが第3引数 <strong>$errfile</strong> を受け入れる場合、 エラーが発生した
                                ファイルの名前が文字列で渡されます。
                                
                                コールバックが第4引数 <strong>$errline</strong> を受け入れる場合、 エラーが発生した行
                                番号が整数で渡されます。
                                
                                コールバックが第5引数 <strong>$errcontext</strong> を受け入れる場合、 エラーが発生し
                                た場所のアクティブシンボルテーブルが配列で渡されます。 つまり、エ
                                ラーが発生したスコープ内でのすべての変数の内容を格納した 配列が
                                <strong>$errcontext</strong> だということです。 ユーザーエラーハンドラは、決してエ
                                ラーコンテキストを書き換えては いけません。
                                
                                このパラメータは PHP 7.2.0 以降では 推奨されなくなり、 PHP 8.0.0 で
                                削除されました。 この引数をデフォルト値以外に設定すると、 ハンドラが
                                呼び出された時に "too few arguments" エラーが発生します。
                                
                                この関数が <info>false</info> を返した場合は、通常のエラーハンドラが処理を引き継
                                ぎます。
  <info>int</info>            <strong>$errno</strong>         最初のパラメータ <strong>$errno</strong> は、発生させる エラーのレベルが整数で渡され
                                ます。
  <info>string</info>         <strong>$errstr</strong>        2 番目のパラメータ <strong>$errstr</strong> は、 エラーメッセージが文字列で渡されま
                                す。
  <info>string</info>         <strong>$errfile</strong>       コールバックが第3引数 <strong>$errfile</strong> を受け入れる場合、 エラーが発生した
                                ファイルの名前が文字列で渡されます。
  <info>int</info>            <strong>$errline</strong>       コールバックが第4引数 <strong>$errline</strong> を受け入れる場合、 エラーが発生した行
                                番号が整数で渡されます。
  <info>array</info>          <strong>$errcontext</strong>    コールバックが第5引数 <strong>$errcontext</strong> を受け入れる場合、 エラーが発生し
                                た場所のアクティブシンボルテーブルが配列で渡されます。 つまり、エ
                                ラーが発生したスコープ内でのすべての変数の内容を格納した 配列が
                                <strong>$errcontext</strong> だということです。 ユーザーエラーハンドラは、決してエ
                                ラーコンテキストを書き換えては いけません。
                                
                                このパラメータは PHP 7.2.0 以降では 推奨されなくなり、 PHP 8.0.0 で
                                削除されました。 この引数をデフォルト値以外に設定すると、 ハンドラが
                                呼び出された時に "too few arguments" エラーが発生します。
  <info>int</info>            <strong>$error_levels</strong>  設定パラメータ error_reporting で表示するエラーを制御するのと全く同
                                様に、 <strong>$callback</strong> の起動を制御する際に 使用可能です。 このマスクを指
                                定しない場合、 <strong>$callback</strong> は error_reporting の設定によらず 全てのエ
                                ラーに関してコールされます。

<comment>Return:</comment>
  <info>callable|null</info>  前に定義されたエラーハンドラ(ある場合)を返します。 組み込みのエラーハンドラを使用し
                 ている場合は <info>null</info> を返します。 前に定義されたハンドラがクラスメソッドの場合、この関
                 数は、 クラスとメソッド名からなる添字配列を返します。

<comment>See Also:</comment>
   * <class>ErrorException</class>
   * <strong>error_reporting()</strong>
   * <strong>restore_error_handler()</strong>
   * <strong>trigger_error()</strong>
   * エラーレベル定数


id: set_exception_handler
type: function
doc:
<comment>Description:</comment>
  ユーザー定義の例外ハンドラ関数を設定する
    
  
  例外が try/catch ブロックの中でキャッチされなかった場合の デフォルトの例外ハンドラを設定します。
  実行は、<strong>$callback</strong> がコールされた後に 停止します。

<comment>Param:</comment>
  <info>callable|null</info>  <strong>$callback</strong>  キャッチされない例外が発生した際にコールされる関数。 このハンドラ関数
                            は、スローされる <class>Throwable</class> オブジェクトを引数にとります。 <class>Error</class> と
                            <class>Exception</class> は、 どちらも <class>Throwable</class> インターフェイスを実装しています。 ハ
                            ンドラのシグネチャは、次のようになります。
                            
                            <info>void</info>handler<info>Throwable</info><strong>$ex</strong>
                            
                            <info>null</info> を渡すと、このハンドラをデフォルトの状態に戻せます。

<comment>Return:</comment>
  <info>callable|null</info>  前に定義された例外ハンドラを返します。 エラー発生時に <info>null</info> を返します。 前にハンド
                 ラが定義されていない場合にも <info>null</info> が返されます。

<comment>See Also:</comment>
   * <strong>restore_exception_handler()</strong>
   * <strong>restore_error_handler()</strong>
   * <strong>error_reporting()</strong>
   * 例外(exceptions)


id: set_file_buffer
type: function
doc:
<comment>Description:</comment>
  stream_set_write_buffer のエイリアス
  
  この関数は次の関数のエイリアスです。 <strong>stream_set_write_buffer()</strong>.


id: set_include_path
type: function
doc:
<comment>Description:</comment>
  include_path 設定オプションをセットする
  
  include_path 設定オプションの値を、このスクリプト内でだけ変更します。

<comment>Param:</comment>
  <info>string</info>  <strong>$include_path</strong>  include_path の新しい値。

<comment>Return:</comment>
  <info>string|false</info>  成功した場合に元の include_path の値、失敗した場合に <info>false</info> を返します。

<comment>See Also:</comment>
   * <strong>ini_set()</strong>
   * <strong>get_include_path()</strong>
   * <strong>restore_include_path()</strong>
   * <strong>include()</strong>


id: set_time_limit
type: function
doc:
<comment>Description:</comment>
  実行時間の最大値を制限する
  
  スクリプトが実行可能な秒数を設定します。 この制限にかかるとスクリプトは致命的エラーを返します。 デ
  フォルトの制限値は 30 秒です。 なお、php.iniで<return>max_execution_time</return>の 値が定義されている場合にはそれ
  を用います。
  
  この関数がコールされた場合、 タイムアウトカウンタをゼロから再スタートします。 言いかえると、タイム
  アウトがデフォルトの 30 秒で スクリプト実行までに 25 秒かかる場合に、 <return>set_time_limit(20)</return> を実行す
  ると、スクリプトは、 タイムアウトまでに全体で 45秒 の間実行されます。

<comment>Param:</comment>
  <info>int</info>  <strong>$seconds</strong>  最大実行時間を表す秒数。ゼロを設定すると、時間制限を行いません。

<comment>Return:</comment>
  <info>bool</info>  成功した場合に <info>true</info>、失敗した場合に <info>false</info> を返します。

<comment>See Also:</comment>
   * max_execution_time
   * max_input_time


id: setcookie
type: function
doc:
<comment>Description:</comment>
  クッキーを送信する
  
  PHP 7.3.0 以降で使える代替のシグネチャ(名前付き引数をサポートしていません):
  
  <strong>setcookie()</strong> は、その他のヘッダ情報と共に 送信するクッキーを定義します。 ほかのヘッダ情報と同様に、
  クッキーは、スクリプトによる他のあらゆる出力よりも前に 送信される必要があります（これはHTTPプロト
  コルの制約です）。 <return>\<html&gt;</return> や <return>\<head&gt;</return> タグはもちろん 空白も含め、あらゆる出力よりも前にこの関数をコールするようにしなければなりません。
  
  一度クッキーが送信されると、次のページのロードからは $_COOKIE 配列によってクッキーにアクセスできま
  す。 クッキーの値は $_REQUEST 配列からもアクセスできるかもしれません。

<comment>Param:</comment>
  <info>string</info>  <strong>$name</strong>                クッキーの名前。
  <info>string</info>  <strong>$value</strong>               クッキーの値。この値はクライアントのコンピュータに保存されますので、
                               重要な情報は格納しないでください。 <strong>$name</strong> が <return>'cookiename'</return> だとすると、
                               その値は $_COOKIE['cookiename'] で取得することができます。
  <info>int</info>     <strong>$expires_or_options</strong>  クッキーの有効期限。これは Unix タイムスタンプなので Epoch（1970 年 1
                               月 1 日）からの経過秒数となります。 この値を設定するひとつの方法とし
                               て、 <strong>time()</strong> が返した値に、 期限としたい必要な秒数を加算することが考え
                               られます。 たとえば、<return>time()+60*60*24*30</return> はクッキーの有効期限を 30 日
                               後にセットします。 別のやり方として、<strong>mktime()</strong> を使うことも考えられま
                               す。 この値に <return>0</return> を設定したり省略したりした場合は、 クッキーはセッショ
                               ンの最後(つまりブラウザを閉じるとき) が有効期限となります。
                               
                               <strong>$expires_or_options</strong> パラメータには、<return>Wdy, DD-Mon-YYYY HH:MM:SS GMT</return> と
                               いった形式ではなく Unix タイムスタンプを渡していることにお気づきで
                               しょうか。 これは、PHP の内部で自動的に変換を行っているからです。
                               
                               <strong>$expires_or_options</strong> パラメータには、<return>Wdy, DD-Mon-YYYY HH:MM:SS GMT</return> と
                               いった形式ではなく Unix タイムスタンプを渡していることにお気づきで
                               しょうか。 これは、PHP の内部で自動的に変換を行っているからです。
  <info>string</info>  <strong>$path</strong>                サーバー上での、クッキーを有効としたいパス <return>'/'</return> をセットすると、クッ
                               キーは <strong>$domain</strong> 配下の全てで有効となります。 <return>'/foo/'</return> をセットすると、
                               クッキーは <return>/foo/</return> ディレクトリとそのサブディレクトリ配下 (例えば
                               <return>/foo/bar/</return>) で有効となります。 デフォルト値は、クッキーがセットされた
                               ときのカレントディレクトリです。
  <info>string</info>  <strong>$domain</strong>              クッキーが有効な (サブ) ドメイン。これを <return>'www.example.com'</return> などのサブ
                               ドメインに設定すると、 <return>www</return> サブドメインおよびそれ自身のすべてのサブド
                               メイン (w2.www.example.com など) でクッキーが使えるようになります。
                               サブドメインを含むドメイン全体でクッキーを有効にしたければ、そのドメ
                               イン自体 (この場合は <return>'example.com'</return>) を設定します。
                               
                               古いブラウザの中には、非推奨になった RFC 2109 を実装しているものが未
                               だに残っているかもしれません。 そのようなブラウザでは、すべてのサブド
                               メインにマッチさせるためには先頭に <return>.</return> が必要となります。
  <info>bool</info>    <strong>$secure</strong>              クライアントからのセキュアな HTTPS 接続の場合にのみクッキーが送信され
                               るようにします。 <info>true</info> を設定すると、セキュアな接続が存在する場合にの
                               みクッキーを設定します。 サーバー側では、このようにセキュアな接続の場
                               合にのみクッキーを送信するという処理は プログラマの責任で行うことにな
                               ります (たとえば $_SERVER["HTTPS"] の内容を使用します)。
  <info>bool</info>    <strong>$httponly</strong>            <info>true</info> を設定すると、HTTP を通してのみクッキーにアクセスできるようにな
                               ります。 つまり、JavaScript のようなスクリプト言語からはアクセスでき
                               なくなるということです。 この設定を使用すると、XSS 攻撃によって ID を
                               盗まれる危険性を減らせる (が、すべてのブラウザがこの設定をサポートし
                               ているというわけではありません) と言われていますが、これはしばしば議
                               論の対象となります。 <info>true</info> あるいは <info>false</info> で指定します。
  <info>array</info>   <strong>$options</strong>             <return>expires</return>, <return>path</return>, <return>domain</return>, <return>secure</return>, <return>httponly</return> および <return>samesite</return> のうちから、
                               任意のキーを設定可能な連想配列(<info>array</info>)です。 これら以外のキーが存在す
                               る場合、<info>E_WARNING</info> レベルの警告が発生します。 値については、キーと同じ
                               名前のパラメーターで説明した意味と同じです。 <return>samesite</return> 要素の値は、
                               <return>None</return>, <return>Lax</return> または <return>Strict</return> です。 上記で許されているオプションのうち、与
                               えられなかったものについては、 デフォルト値は明示的にパラメータを与え
                               た場合のデフォルト値と同じです。 <return>samesite</return> 要素が省略された場合は、
                               SameSite クッキー属性は設定されません。

<comment>Return:</comment>
  <info>bool</info>  もしもこの関数をコールする前に何らかの出力がある場合には、 <strong>setcookie()</strong> は失敗し <info>false</info> を返し
        ます。 <strong>setcookie()</strong> が正常に実行されると、<info>true</info> を返します。 この関数では、ユーザーがクッキー
        を受け入れたかどうかを判断することはできません。

<comment>See Also:</comment>
   * <strong>header()</strong>
   * <strong>setrawcookie()</strong>
   * クッキー
   * RFC 6265
   * RFC 2109


id: setlocale
type: function
doc:
<comment>Description:</comment>
  ロケール情報を設定する
  
  代替のシグネチャ (名前付き引数をサポートしていません):
  
  ロケール情報を設定します。
  
  ロケール情報は、スレッド毎ではなくプロセス毎に維持されます。 もし PHP を マルチスレッドサーバーAPI
  上で動作させている場合、 スクリプトを実行している間にロケールの設定が突然変わるのを 経験するかも知
  れませんが、スクリプト自身は決して <strong>setlocale()</strong> 自身をコールしていません。 これは同時に同一プロセス
  の異なるスレッドで実行されている他のスクリプトが <strong>setlocale()</strong> を使用してプロセスワイドなロケールを
  変更する事により発生します。 Windows では、PHP 7.0.5 以降、 ロケール情報はスレッド単位で維持される
  ようになっています。

<comment>Param:</comment>
  <info>int</info>     <strong>$category</strong>      <strong>$category</strong>は、名前付きの定数(または文字列)であり、 ロケール設定により影響を
                         受ける関数のカテゴリを指定します。 <info>LC_ALL</info> 以下のものすべて <info>LC_COLLATE</info> 文字
                         列の比較用。<strong>strcoll()</strong> も参照 <info>LC_CTYPE</info> 文字の分類と変換。たとえば
                         <strong>ctype_alpha()</strong> <info>LC_MONETARY</info><strong>localeconv()</strong> 用 <info>LC_NUMERIC</info> 数字の区切り文字用
                         (<strong>localeconv()</strong> も参照ください) <info>LC_TIME</info> 日時。<strong>strftime()</strong>でフォーマットに使用
                         <info>LC_MESSAGES</info> システムの応答用(PHP が <return>libintl</return> とともにコンパイルされている場
                         合のみ使用可能)
                         
                         <info>LC_ALL</info> 以下のものすべて
                         
                         <info>LC_COLLATE</info> 文字列の比較用。<strong>strcoll()</strong> も参照
                         
                         <info>LC_CTYPE</info> 文字の分類と変換。たとえば <strong>ctype_alpha()</strong>
                         
                         <info>LC_MONETARY</info><strong>localeconv()</strong> 用
                         
                         <info>LC_NUMERIC</info> 数字の区切り文字用(<strong>localeconv()</strong> も参照ください)
                         
                         <info>LC_TIME</info> 日時。<strong>strftime()</strong>でフォーマットに使用
                         
                         <info>LC_MESSAGES</info> システムの応答用(PHP が <return>libintl</return> とともにコンパイルされている場
                         合のみ使用可能)
  <info>string</info>  <strong>$locales</strong>       <strong>$locales</strong>が空の文字列 <return>""</return> の場合、ロケール名は上記のカテゴリと同じ名前の環境
                         変数の値、 または環境変数 "LANG" からセットされます。
                         
                         <strong>$locales</strong> が <return>"0"</return> の場合、 ロケール設定は適用されず、単に現在の設定が返されま
                         す。
                         
                         <strong>$locales</strong> に追加のパラメータが続く場合、 それぞれのパラメータは成功するまで
                         新規ロケールとしてセットされます。 これは、ロケールが異なるシステムで異なる
                         名前を持っている、 もしくはロケールが利用できない場合のフォールバックを提供
                         するといった場合に有用です。
  <info>string</info>  <strong>$rest</strong>          オプションの文字列。ロケール設定が成功するまで設定を試みます。
  <info>array</info>   <strong>$locale_array</strong>  それぞれの配列の要素が、 新しいロケールとして設定が成功するまで設定を試みま
                         す。 これは、異なるシステムでロケールが違う名前として認識されたり、 ロケー
                         ルが利用できない可能性がある場合にフォールバックさせる目的で使うと便利で
                         す。

<comment>Return:</comment>
  <info>string|false</info>  現在の新しいロケールを返します。ロケール機能が未実装、 指定されたロケールが存在しな
                い、カテゴリ名が無効などの場合は <info>false</info> を返します。
                
                また、カテゴリ名が無効の場合は警告メッセージが発生します。 カテゴリやロケール名は、
                RFC 1766 や ISO 639 にあります。 ロケールの命名方式は、システムによって異なります。
                
                <strong>setlocale()</strong> の戻り値は、 PHP が実行されているシステムに依存します。 システムの
                <return>setlocale</return> 関数が返す値を返すためです。


id: setrawcookie
type: function
doc:
<comment>Description:</comment>
  値を URL エンコードせずにクッキーを送信する
  
  PHP 7.3.0 以降で使える代替のシグネチャ(名前付き引数をサポートしていません):
  
  <strong>setrawcookie()</strong> は、 ブラウザに送信される際クッキーの値が自動的に URL エンコードされないことを除
  き、 <strong>setcookie()</strong> と等価です。

<comment>Return:</comment>
  <info>bool</info>  成功した場合に <info>true</info> を、失敗した場合に <info>false</info> を返します。

<comment>See Also:</comment>
   * <strong>setcookie()</strong>


id: settype
type: function
doc:
<comment>Description:</comment>
  変数の型をセットする
  
  変数 <strong>$var</strong> の型を <strong>$type</strong> にセットします。

<comment>Param:</comment>
  <info>mixed</info>   <strong>$var</strong>   変換する変数。
  <info>string</info>  <strong>$type</strong>  <strong>$type</strong> の値は以下の命令のいずれかです。  "boolean" または "bool"  "integer" または
                 "int"  "float" または "double"  "string"  "array"  "object"  "null"
                 
                 "boolean" または "bool"
                 
                 "integer" または "int"
                 
                 "float" または "double"
                 
                 "string"
                 
                 "array"
                 
                 "object"
                 
                 "null"

<comment>Return:</comment>
  <info>bool</info>  成功した場合に <info>true</info> を、失敗した場合に <info>false</info> を返します。

<comment>See Also:</comment>
   * <strong>gettype()</strong>
   * 型キャスト
   * 型の相互変換


id: sha1
type: function
doc:
<comment>Description:</comment>
  文字列の sha1 ハッシュを計算する
  
  US Secure Hash Algorithm 1 を使用して <strong>$string</strong> の sha1 ハッシュを計算します。

<comment>Param:</comment>
  <info>string</info>  <strong>$string</strong>  入力文字列。
  <info>bool</info>    <strong>$binary</strong>  オプションの <strong>$binary</strong> に <info>true</info> が指定された場合、sha1 ダイジェストは 20 バイト長の
                   バイナリ形式で返されます。 それ以外の場合は、戻り値は 40 文字の 16 進数となりま
                   す。

<comment>Return:</comment>
  <info>string</info>  sha1 ハッシュを文字列で返します。

<comment>See Also:</comment>
   * <strong>sha1_file()</strong>
   * <strong>crc32()</strong>
   * <strong>md5()</strong>
   * <strong>hash()</strong>
   * <strong>crypt()</strong>
   * <strong>password_hash()</strong>


id: sha1_file
type: function
doc:
<comment>Description:</comment>
  ファイルの sha1 ハッシュを計算する
  
  US Secure Hash Algorithm 1 を使用して <strong>$filename</strong> の sha1 ハッシュを計算し、そのハッシュを 返しま
  す。ハッシュは 40 文字の 16 進数となります。

<comment>Param:</comment>
  <info>string</info>  <strong>$filename</strong>  ハッシュしたいファイルのファイル名。
  <info>bool</info>    <strong>$binary</strong>    <info>true</info> を指定すると、長さ 20 のバイナリフォーマットで ダイジェストを返します。

<comment>Return:</comment>
  <info>string|false</info>  成功した場合に文字列、それ以外の場合に <info>false</info> を返します。

<comment>See Also:</comment>
   * <strong>sha1()</strong>
   * <strong>md5_file()</strong>
   * <strong>crc32()</strong>


id: shell_exec
type: function
doc:
<comment>Description:</comment>
  シェルによりコマンドを実行し、文字列として出力全体を返す
  
  この関数は バッククォート演算子 と等価です。
  
  Windows では、パイプがテキストモードでオープンされるため、 この出力を使ったバイナリの出力が失敗す
  る可能性があります。 このような場合は、<strong>popen()</strong> の利用を検討してください。

<comment>Param:</comment>
  <info>string</info>  <strong>$command</strong>  実行するコマンド

<comment>Return:</comment>
  <info>string|false|null</info>  実行されたコマンドからの出力を文字列で返します。 パイプがオープンできなかった場
                     合は <info>false</info> を返します。 エラーが発生したり、コマンドが何も出力しなかった場合は
                     <info>null</info> を返します。
                     
                     この関数は、エラーが発生した場合だけでなくプログラムが何も出力しなかった場合に
                     も <info>null</info> を返します。 そのため、実行に失敗したかどうかをこの関数では判断できませ
                     ん。 プログラムの終了コードを調べる必要があるときには <strong>exec()</strong> を使いましょう。

<comment>See Also:</comment>
   * <strong>exec()</strong>
   * <strong>escapeshellcmd()</strong>


id: shm_attach
type: function
doc:
<comment>Description:</comment>
  共有メモリセグメントを作成またはオープンする
  
  <strong>shm_attach()</strong> は ID を返します。 これは、指定されたキー <strong>$key</strong> で System V 共有メモリにアクセスする際
  に使用することが可能です。 最初のコールの際に、サイズが <strong>$size</strong>、 オプションのパーミッション
  <strong>$permissions</strong> を指定した共有メモリセグメントを作成します。
  
  同じ <strong>$key</strong> で <strong>shm_attach()</strong> を 2 回コールした場合は 別の <class>SysvSharedMemory</class> インスタンスが返されます
  が、 両方のインスタンスは同じ共有メモリをアクセスします。 <strong>$size</strong> および <strong>$permissions</strong> は無視されま
  す。

<comment>Param:</comment>
  <info>int</info>       <strong>$key</strong>          共有メモリセグメント ID を表す数値。
  <info>int|null</info>  <strong>$size</strong>         メモリのサイズ。省略した場合のデフォルトは php.ini の <return>sysvshm.init_mem</return>、あ
                          るいは 10000 バイトとなります。
  <info>int</info>       <strong>$permissions</strong>  オプションのパーミッション設定。デフォルトは 0666 です。

<comment>Return:</comment>
  <info>SysvSharedMemory|false</info>  成功時には、<class>SysvSharedMemory</class> クラスのインスタンスを返します。 失敗した場合
                          に <info>false</info> を返します

<comment>See Also:</comment>
   * <strong>shm_detach()</strong>
   * <strong>ftok()</strong>


id: shm_detach
type: function
doc:
<comment>Description:</comment>
  共有メモリセグメントへの接続を閉じる
  
  <strong>shm_detach()</strong> は、 <strong>shm_attach()</strong> で作成され、 指定した <strong>$shm</strong> を有する共有メモリへの接続を閉じます。
  共有メモリは、まだ Unix システム上に存在しており、 データはまだ存在するということを覚えておいてく
  ださい。

<comment>Param:</comment>
  <info>SysvSharedMemory</info>  <strong>$shm</strong>  <strong>shm_attach()</strong> が返す共有メモリセグメント。

<comment>Return:</comment>
  <info>bool</info>  成功した場合に <info>true</info> を、失敗した場合に <info>false</info> を返します。

<comment>See Also:</comment>
   * <strong>shm_attach()</strong>
   * <strong>shm_remove()</strong>
   * <strong>shm_remove_var()</strong>


id: shm_get_var
type: function
doc:
<comment>Description:</comment>
  共有メモリから変数を返す
  
  <strong>shm_get_var()</strong> は、 <strong>$shm</strong> で指定した共有メモリセグメントから 変数 <strong>$key</strong> を読みこみます。 読み込んだ変
  数は、まだ共有メモリに存在します。

<comment>Param:</comment>
  <info>SysvSharedMemory</info>  <strong>$shm</strong>  共有メモリセグメント。<strong>shm_attach()</strong> から取得します。
  <info>int</info>               <strong>$key</strong>  変数のキー。

<comment>Return:</comment>
  <info>mixed</info>  指定したキーの変数を返します。

<comment>See Also:</comment>
   * <strong>shm_has_var()</strong>
   * <strong>shm_put_var()</strong>


id: shm_has_var
type: function
doc:
<comment>Description:</comment>
  特定のエントリが存在するかどうかを調べる
  
  特定のキーが共有メモリセグメント内に存在するかどうかを調べます。

<comment>Param:</comment>
  <info>SysvSharedMemory</info>  <strong>$shm</strong>  <strong>shm_attach()</strong> で取得した共有メモリセグメント。
  <info>int</info>               <strong>$key</strong>  変数のキー。

<comment>Return:</comment>
  <info>bool</info>  エントリが存在する場合に <info>true</info>、それ以外の場合に <info>false</info> を返します。

<comment>See Also:</comment>
   * <strong>shm_get_var()</strong>
   * <strong>shm_put_var()</strong>


id: shm_put_var
type: function
doc:
<comment>Description:</comment>
  共有メモリの変数を挿入または更新する
  
  <strong>shm_put_var()</strong> は、 指定した <strong>$key</strong> を有する 変数 <strong>$value</strong> の挿入または更新を行います。
  
  <strong>$shm</strong> が有効な SysV 共有メモリではない場合や リクエストを処理するために充分な共有メモリが残っていな
  い場合は (<info>E_WARNING</info> レベルの) 警告を発生させます。

<comment>Param:</comment>
  <info>SysvSharedMemory</info>  <strong>$shm</strong>    <strong>shm_attach()</strong> が返す共有メモリセグメント。
  <info>int</info>               <strong>$key</strong>    変数のキー。
  <info>mixed</info>             <strong>$value</strong>  変数。<strong>serialize()</strong> がサポートするすべての 型を使うことができます。 通常こ
                            れは、リソース型と一部の内部オブジェクト (シリアライズできないもの) 以外
                            のすべての型を意味します。

<comment>Return:</comment>
  <info>bool</info>  成功した場合に <info>true</info> を、失敗した場合に <info>false</info> を返します。

<comment>See Also:</comment>
   * <strong>shm_get_var()</strong>
   * <strong>shm_has_var()</strong>


id: shm_remove
type: function
doc:
<comment>Description:</comment>
  Unix システムから共有メモリを削除する
  
  <strong>shm_remove()</strong> は、共有メモリ <strong>$shm</strong> を削除します。 全てのデータは破棄されます。

<comment>Param:</comment>
  <info>SysvSharedMemory</info>  <strong>$shm</strong>  <strong>shm_attach()</strong> が返す 共有メモリセグメント。

<comment>Return:</comment>
  <info>bool</info>  成功した場合に <info>true</info> を、失敗した場合に <info>false</info> を返します。

<comment>See Also:</comment>
   * <strong>shm_remove_var()</strong>


id: shm_remove_var
type: function
doc:
<comment>Description:</comment>
  共有メモリから変数を削除する
  
  指定した<strong>$key</strong> を有する変数を共有メモリから削除し、占有するメモリを解放します。

<comment>Param:</comment>
  <info>SysvSharedMemory</info>  <strong>$shm</strong>  <strong>shm_attach()</strong> が返す 共有メモリセグメント。
  <info>int</info>               <strong>$key</strong>  変数のキー。

<comment>Return:</comment>
  <info>bool</info>  成功した場合に <info>true</info> を、失敗した場合に <info>false</info> を返します。

<comment>See Also:</comment>
   * <strong>shm_remove()</strong>


id: shmop_close
type: function
doc:
<comment>Description:</comment>
  共有メモリブロックを閉じる
  
  この関数を実行しても何も起こりません。PHP 8.0.0 より前のバージョンでは、この関数はリソースを閉じる
  のに使われていました。
  
  <strong>shmop_close()</strong> は、共有メモリブロックを閉じます。

<comment>Param:</comment>
  <info>Shmop</info>  <strong>$shmop</strong>  <strong>shmop_open()</strong> 関数で作られた共有メモリブロックのリソース。

<comment>Return:</comment>
  <info>void</info>  値を返しません。

<comment>See Also:</comment>
   * <strong>shmop_open()</strong>


id: shmop_delete
type: function
doc:
<comment>Description:</comment>
  共有メモリブロックを削除する
  
  <strong>shmop_delete()</strong> は、共有メモリブロックを削除ます。

<comment>Param:</comment>
  <info>Shmop</info>  <strong>$shmop</strong>  <strong>shmop_open()</strong> で作られた共有メモリブロックのリソース

<comment>Return:</comment>
  <info>bool</info>  成功した場合に <info>true</info> を、失敗した場合に <info>false</info> を返します。


id: shmop_open
type: function
doc:
<comment>Description:</comment>
  共有メモリブロックを作成またはオープンする
  
  <strong>shmop_open()</strong> は共有メモリブロックを作成または オープンします。

<comment>Param:</comment>
  <info>int</info>     <strong>$key</strong>          共有メモリブロックのシステム ID であり、10 進数または 16 進数で指定すること
                        が可能です。
  <info>string</info>  <strong>$mode</strong>         フラグに設定できる内容は、次のとおりです。  "a" アクセス用(shmat に
                        SHM_RDONLY を設定する) 既存の共有メモリセグメントを読み込み専用でオープンす
                        る必要がある場合に このフラグを使用してください。  "c" 作成用(IPC_CREATE を
                        設定する) 新規に共有メモリセグメントが必要な場合にこのフラグを使用してくださ
                        い。 もし同じキーのセグメントがすでに存在する場合、それを読み書きモードで
                        オープンしようと試みます。  "w" 読み込み & 書き込みアクセス用 共有メモリセグ
                        メントの読み込みや書き込みの必要がある場合にこのフラグを 使用してください。
                        たいていの場合はこのフラグを使用します。  "n" 新規メモリセグメントの作成用
                        (IPC_CREATE|IPC_EXCL を設定する) 新規に共有メモリセグメントが必要で、もし同
                        じフラグのセグメントが 存在するときには失敗させたい場合にこのフラグを使用し
                        てください。 セキュリティを確保するために、このフラグは有用です。これを使用
                        する ことで、条件の競合による問題を避けることが可能です。
                        
                        "a" アクセス用(shmat に SHM_RDONLY を設定する) 既存の共有メモリセグメントを
                        読み込み専用でオープンする必要がある場合に このフラグを使用してください。
                        
                        "c" 作成用(IPC_CREATE を設定する) 新規に共有メモリセグメントが必要な場合にこ
                        のフラグを使用してください。 もし同じキーのセグメントがすでに存在する場合、
                        それを読み書きモードで オープンしようと試みます。
                        
                        "w" 読み込み & 書き込みアクセス用 共有メモリセグメントの読み込みや書き込みの
                        必要がある場合にこのフラグを 使用してください。たいていの場合はこのフラグを
                        使用します。
                        
                        "n" 新規メモリセグメントの作成用(IPC_CREATE|IPC_EXCL を設定する) 新規に共有
                        メモリセグメントが必要で、もし同じフラグのセグメントが 存在するときには失敗
                        させたい場合にこのフラグを使用してください。 セキュリティを確保するために、
                        このフラグは有用です。これを使用する ことで、条件の競合による問題を避けるこ
                        とが可能です。
  <info>int</info>     <strong>$permissions</strong>  共有メモリセグメントに設定したい 許可属性で、ファイルに関する許可属性と同様
                        なものです。許可属性は、 例えば <return>0644</return> のような 8 進数形式で渡す必要がありま
                        す。
  <info>int</info>     <strong>$size</strong>         作成したい共有メモリブロックの大きさをバイト数で指定します。

<comment>Return:</comment>
  <info>Shmop|false</info>  成功した場合は、<strong>shmop_open()</strong> は 作成した共有メモリセグメントにアクセスするために使用
               する <class>Shmop</class> クラスのインスタンスを返します。 失敗した場合に <info>false</info> を返します。

<comment>See Also:</comment>
   * <strong>shmop_close()</strong>
   * <strong>shmop_delete()</strong>


id: shmop_read
type: function
doc:
<comment>Description:</comment>
  共有メモリブロックからデータを読み取る
  
  <strong>shmop_read()</strong> は、共有メモリブロックから文字列を読み取ります。

<comment>Param:</comment>
  <info>Shmop</info>  <strong>$shmop</strong>   <strong>shmop_open()</strong> 関数で作られた、共有メモリブロックの識別子。
  <info>int</info>    <strong>$offset</strong>  読み取りを始めるオフセット。 この値は 0 以上、かつ共有メモリセグメントの実際のサイ
                  ズ以下でなければいけません。
  <info>int</info>    <strong>$size</strong>    読み取るバイト数。 この値は 0 以上、かつ <strong>$offset</strong> と <strong>$size</strong> の合計値が、共有メモリセ
                  グメントの実際のサイズ以下でなければいけません。 <return>0</return> を指定すると、
                  shmop_size($shmid) - $start バイトを読み取ります。

<comment>Return:</comment>
  <info>string</info>  読み取ったデータを返します。 失敗した場合に <info>false</info> を返します

<comment>See Also:</comment>
   * <strong>shmop_write()</strong>


id: shmop_size
type: function
doc:
<comment>Description:</comment>
  共有メモリブロックの大きさを取得する
  
  <strong>shmop_size()</strong> は、共有メモリブロックのサイズをバイト単位で取得します。

<comment>Param:</comment>
  <info>Shmop</info>  <strong>$shmop</strong>  <strong>shmop_open()</strong> 関数で作られた、共有メモリブロックの識別子。

<comment>Return:</comment>
  <info>int</info>  共有メモリブロックが専有している大きさをバイト単位で返します。


id: shmop_write
type: function
doc:
<comment>Description:</comment>
  共有メモリブロックにデータを書き込む
  
  <strong>shmop_write()</strong> は、共有メモリブロックに文字列を書き込みます。

<comment>Param:</comment>
  <info>Shmop</info>   <strong>$shmop</strong>   <strong>shmop_open()</strong> で作られた共有メモリブロックの識別子。
  <info>string</info>  <strong>$data</strong>    共有メモリブロックに書き込む文字列
  <info>int</info>     <strong>$offset</strong>  共有メモリセグメント内部のどこから、データを書き始めるかを指定します。 この値は 0
                   以上、かつ共有メモリセグメントの実際のサイズ以下でなければいけません。

<comment>Return:</comment>
  <info>int</info>  書き込んだ <strong>$data</strong> のサイズを返します。

<comment>See Also:</comment>
   * <strong>shmop_read()</strong>


id: show_source
type: function
doc:
<comment>Description:</comment>
  highlight_file のエイリアス
  
  この関数は次の関数のエイリアスです。 <strong>highlight_file()</strong>.


id: shuffle
type: function
doc:
<comment>Description:</comment>
  配列をシャッフルする
  
  この関数は、配列をシャッフル (要素の順番をランダムに) します。
  
  この関数が生成する値は、暗号学的にセキュアではありません。そのため、これを暗号や、戻り値を推測でき
  ないことが必須の値として使っては いけません。
  
  暗号学的にセキュアな乱数が必要な場合は、<class>Random\Randomizer</class> を <class>Random\Engine\Secure</class> と一緒に使いま
  しょう。簡単なユースケースの場合、<strong>random_int()</strong> と <strong>random_bytes()</strong> 関数が、オペレーティングシステム
  の CSPRNG を使った、 便利で安全な API を提供します。

<comment>Param:</comment>
  <info>array</info>  <strong>$array</strong>  配列。

<comment>Return:</comment>
  <info>true</info>  常に <info>true</info> を返します。

<comment>See Also:</comment>
   * <strong>Random\Randomizer::shuffleArray()</strong>
   * <strong>Random\Randomizer::shuffleBytes()</strong>
   * <strong>Random\Randomizer::pickArrayKeys()</strong>
   * 配列ソート関数の比較


id: simdjson_decode
type: function
doc:
<comment>Description:</comment>
  Decodes a JSON string
  
  Takes a JSON encoded string and converts it into a PHP value. This uses a faster Simultaneous
  Instruction, Multiple Data implementation than <strong>json_decode()</strong> when it is supported by the computer
  architecture.

<comment>Param:</comment>
  <info>string</info>  <strong>$json</strong>         The <strong>$json</strong> <info>string</info> being decoded.
                        
                        This function only works with UTF-8 encoded strings.
                        
                        This function parses valid inputs which <strong>json_decode()</strong> can decode, provided
                        that they are less than 4 GiB long.
  <info>bool</info>    <strong>$associative</strong>  When <info>true</info>, JSON objects will be returned as associative <info>array</info>s; when <info>false</info>,
                        JSON objects will be returned as <info>object</info>s.
  <info>int</info>     <strong>$depth</strong>        Maximum nesting depth of the structure being decoded. The value must be
                        greater than <return>0</return>, and less than or equal to <return>2147483647</return>.
                         Callers should use reasonably small values, because larger depths require
                        more buffer space and will increase the recursion depth, unlike the current
                        <strong>json_decode()</strong> implementation.

<comment>Return:</comment>
  <info>mixed</info>  Returns the value encoded in <strong>$json</strong> in appropriate PHP type. Values <return>true</return>, <return>false</return> and <return>null</return> are
         returned as <info>true</info>, <info>false</info> and <info>null</info> respectively.

<comment>See Also:</comment>
   * <strong>json_encode()</strong>
   * <strong>json_decode()</strong>


id: simdjson_is_valid
type: function
doc:
<comment>Description:</comment>
  Check if a JSON string is valid
  
  Takes a JSON encoded string and returns true if it is valid.

<comment>Param:</comment>
  <info>string</info>  <strong>$json</strong>   The <strong>$json</strong> <info>string</info> being validated.
                  
                  This function only works with UTF-8 encoded strings.
                  
                  This function validates inputs which <strong>json_decode()</strong> can decode, provided that they
                  are less than 4 GiB long.
  <info>int</info>     <strong>$depth</strong>  Maximum nesting depth of the structure being validated. The value must be greater
                  than <return>0</return>, and less than or equal to <return>2147483647</return>.
                   Callers should use reasonably small values, because larger depths require more
                  buffer space and will increase the recursion depth, unlike the current
                  <strong>json_decode()</strong> implementation.

<comment>Return:</comment>
  <info>bool</info>  Returns <info>true</info> if <strong>$json</strong> is a valid JSON string, <info>false</info> otherwise.

<comment>See Also:</comment>
   * <strong>json_encode()</strong>
   * <strong>json_decode()</strong>


id: simdjson_key_count
type: function
doc:
<comment>Description:</comment>
  Returns the value at a JSON pointer.
  
  Count the number of elements of the object/array found at the requested JSON pointer.

<comment>Param:</comment>
  <info>string</info>  <strong>$json</strong>                  The <strong>$json</strong> <info>string</info> being queried.
  <info>string</info>  <strong>$key</strong>                   The JSON pointer <info>string</info>.
  <info>int</info>     <strong>$depth</strong>                 Maximum nesting depth of the structure being validated. The value
                                 must be greater than <return>0</return>, and less than or equal to <return>2147483647</return>.
                                  Callers should use reasonably small values, because larger depths
                                 require more buffer space and will increase the recursion depth,
                                 unlike the current <strong>json_decode()</strong> implementation.
  <info>bool</info>    <strong>$throw_if_uncountable</strong>  When true, a <class>SimdJsonException</class> will be thrown instead of returning
                                 0 when the value the JSON pointer points to is neither an object
                                 nor an array.

<comment>Return:</comment>
  <info>int</info>  Returns an <info>int</info> with the number of elements of the value at the given JSON pointer.


id: simdjson_key_exists
type: function
doc:
<comment>Description:</comment>
  Check if the JSON contains the value referred to by a JSON pointer.
  
  Count the number of elements of the object/array found at the requested JSON pointer.

<comment>Param:</comment>
  <info>string</info>  <strong>$json</strong>                  The <strong>$json</strong> <info>string</info> being queried.
  <info>string</info>  <strong>$key</strong>                   The JSON pointer <info>string</info>.
  <info>int</info>     <strong>$depth</strong>                 Maximum nesting depth of the structure being validated. The value
                                 must be greater than <return>0</return>, and less than or equal to <return>2147483647</return>.
                                  Callers should use reasonably small values, because larger depths
                                 require more buffer space and will increase the recursion depth,
                                 unlike the current <strong>json_decode()</strong> implementation.
  <info></info>        <strong>$throw_if_uncountable</strong>  When true, a <class>SimdJsonException</class> will be thrown instead of returning
                                 0 when the value the JSON pointer points to is neither an object
                                 nor an array.

<comment>Return:</comment>
  <info>bool</info>  Returns <info>true</info> if the JSON pointer is valid and refers to a value found within a valid JSON
        string. Returns <info>false</info> if the JSON is valid but does not contain the JSON pointer.


id: simdjson_key_value
type: function
doc:
<comment>Description:</comment>
  Decodes the value of a JSON string located at the requested JSON pointer.
  
  Decodes and returns the value found at the requested JSON pointer.

<comment>Param:</comment>
  <info>string</info>  <strong>$json</strong>         The <strong>$json</strong> <info>string</info> being queried and decoded.
                        
                        This function only works with UTF-8 encoded strings.
                        
                        This function parses valid inputs which <strong>json_decode()</strong> can decode, provided
                        that they are less than 4 GiB long.
  <info>string</info>  <strong>$key</strong>          The JSON pointer <info>string</info>.
  <info>bool</info>    <strong>$associative</strong>  When <info>true</info>, JSON objects will be returned as associative <info>array</info>s; when <info>false</info>,
                        JSON objects will be returned as <info>object</info>s.
  <info>int</info>     <strong>$depth</strong>        Maximum nesting depth of the structure being decoded. The value must be
                        greater than <return>0</return>, and less than or equal to <return>2147483647</return>.
                         Callers should use reasonably small values, because larger depths require
                        more buffer space and will increase the recursion depth, unlike the current
                        <strong>json_decode()</strong> implementation.

<comment>Return:</comment>
  <info>mixed</info>  Returns the part of the value encoded in <strong>$json</strong> that <strong>$key</strong> refers to in appropriate PHP type.
         Values <return>true</return>, <return>false</return> and <return>null</return> are returned as <info>true</info>, <info>false</info> and <info>null</info> respectively.

<comment>See Also:</comment>
   * <strong>json_encode()</strong>
   * <strong>simdjson_decode()</strong>


id: similar_text
type: function
doc:
<comment>Description:</comment>
  二つの文字列の間の類似性を計算する
  
  この関数は、Programming Classics: Implementing the World's Best Algorithms by Oliver (ISBN
  0-131-00413-1) に記述されたように二つの文字列の間の類似性を計算します。 この実装は Oliver の擬似
  コードの様にスタックを使用せず、 プロセス全体の速度が改善されるかどうかにかかわらず再帰呼び出しを
  行うことに注意してください。 このアルゴリズムの計算量は、O(N**3) であることにも注意してください。
  ただし、N は最も長い文字列の長さです。

<comment>Param:</comment>
  <info>string</info>  <strong>$string1</strong>  最初の文字列。
  <info>string</info>  <strong>$string2</strong>  次の文字列。
                    
                    <strong>$string1</strong> と <strong>$string2</strong> を入れ替えると、 結果は異なるものになります; 例を参照くださ
                    い。
  <info>float</info>   <strong>$percent</strong>  3 番目の引数としてリファレンスを渡すことにより、 <strong>similar_text()</strong> は類似性をパーセ
                    ントで計算します。 これは、<strong>similar_text()</strong> の結果を、 与えられた文字列の長さの平
                    均を <return>100</return> 倍した値で割ることで出しています。

<comment>Return:</comment>
  <info>int</info>  両方の文字列でマッチした文字の数を返します。
       
       マッチする文字数は、 最初の共通最長部分文字列を探し、 同じことをその文字列の 前後の文字列に対
       して再帰的に行うことで計算されます。 そうして見つかった全ての共通部分文字列の長さが追加されま
       す。

<comment>See Also:</comment>
   * <strong>levenshtein()</strong>
   * <strong>soundex()</strong>


id: simplexml_import_dom
type: function
doc:
<comment>Description:</comment>
  DOM ノードから SimpleXMLElement オブジェクトを取得する
  
  この関数は、DOM ドキュメントのノードを引数とし、 SimpleXML ノードを作成します。この新しいオブジェ
  クトは、 この後、通常の SimpleXML 要素として使用できます。

<comment>Param:</comment>
  <info>SimpleXMLElement|DOMNode</info>  <strong>$node</strong>        DOM 要素ノード。
  <info>string|null</info>               <strong>$class_name</strong>  このオプションパラメータを使用すると、
                                         <strong>simplexml_import_dom()</strong> は指定したクラスのオブジェクトを返し
                                         ます。このクラスは <info>SimpleXMLElement</info> を継承していなければな
                                         りません。

<comment>Return:</comment>
  <info>SimpleXMLElement|null</info>  <info>SimpleXMLElement</info> を返します。 失敗時に <info>null</info> を返します。

<comment>See Also:</comment>
   * <strong>dom_import_simplexml()</strong>
   * 


id: simplexml_load_file
type: function
doc:
<comment>Description:</comment>
  XMLファイルをパースし、オブジェクトに代入する
    
  
  指定したファイルの中の整形式 XML ドキュメントをオブジェクトに変換します。

<comment>Param:</comment>
  <info>string</info>       <strong>$filename</strong>             XML ファイルへのパス。
  <info>string|null</info>  <strong>$class_name</strong>           <strong>simplexml_load_file()</strong> が指定されたクラスのオブジェクトを返すよ
                                     うにするために、 このオプションのパラメータを使用します。 この
                                     クラスは、<info>SimpleXMLElement</info> クラスを継承していなければなりませ
                                     ん。
  <info>int</info>          <strong>$options</strong>              追加の Libxml パラメータ を、ビット演算子の <return>OR</return> で指定します。
  <info>string</info>       <strong>$namespace_or_prefix</strong>  名前空間プレフィックスあるいは URI。
  <info>bool</info>         <strong>$is_prefix</strong>            <strong>$namespace_or_prefix</strong> がプレフィックスである場合に <info>true</info>、 URI で
                                     ある場合に <info>false</info>。デフォルトは <info>false</info> です。

<comment>Return:</comment>
  <info>SimpleXMLElement|false</info>  <info>SimpleXMLElement</info> クラスのオブジェクトを返します。 XML ドキュメント内のデー
                          タをプロパティに含みます。 失敗した場合に <info>false</info> を返します。
                          
                          この関数は論理値
                          <info>false</info> を返す可能性がありますが、<info>false</info> として評価される値を返す可能性もあり
                          ます。
                          詳細については 論理値の
                          セクションを参照してください。この関数の返り値を調べるには
                          ===演算子 を
                          使用してください。

<comment>See Also:</comment>
   * <strong>simplexml_load_string()</strong>
   * SimpleXMLElement::__construct
   * 
   * <strong>libxml_use_internal_errors()</strong>
   * 
   * <strong>libxml_set_streams_context()</strong>


id: simplexml_load_string
type: function
doc:
<comment>Description:</comment>
  XML 文字列をオブジェクトに代入する
    
  
  整形式 XML 文字列をオブジェクトとして返します。

<comment>Param:</comment>
  <info>string</info>       <strong>$data</strong>                 整形式 XML 文字列。
  <info>string|null</info>  <strong>$class_name</strong>           このオプションのパラメータを使用して、 <strong>simplexml_load_file()</strong> が
                                     指定されたクラスのオブジェクトを返すようにします。 このクラス
                                     は、<info>SimpleXMLElement</info> クラスを継承していなければなりません。
  <info>int</info>          <strong>$options</strong>              追加の Libxml パラメータ を、ビット演算子の <return>OR</return> で指定します。
  <info>string</info>       <strong>$namespace_or_prefix</strong>  名前空間プレフィックスあるいは URI。
  <info>bool</info>         <strong>$is_prefix</strong>            <strong>$namespace_or_prefix</strong> がプレフィックスである場合に <info>true</info>、 URI で
                                     ある場合に <info>false</info>。デフォルトは <info>false</info> です。

<comment>Return:</comment>
  <info>SimpleXMLElement|false</info>  <info>SimpleXMLElement</info> クラスのオブジェクトを返します。 XML ドキュメント内のデー
                          タをプロパティに含みます。 失敗した場合に <info>false</info> を返します。
                          
                          この関数は論理値
                          <info>false</info> を返す可能性がありますが、<info>false</info> として評価される値を返す可能性もあり
                          ます。
                          詳細については 論理値の
                          セクションを参照してください。この関数の返り値を調べるには
                          ===演算子 を
                          使用してください。

<comment>See Also:</comment>
   * <strong>simplexml_load_file()</strong>
   * SimpleXMLElement::__construct
   * 
   * <strong>libxml_use_internal_errors()</strong>
   * 


id: sin
type: function
doc:
<comment>Description:</comment>
  正弦（サイン）
  
  <strong>sin()</strong> は、<strong>$num</strong> のサインを 返します。<strong>$num</strong> はラジアンです。

<comment>Param:</comment>
  <info>float</info>  <strong>$num</strong>  ラジアンで表した値。

<comment>Return:</comment>
  <info>float</info>  <strong>$num</strong> のサインを返します。

<comment>See Also:</comment>
   * <strong>asin()</strong>
   * <strong>sinh()</strong>
   * <strong>cos()</strong>
   * <strong>tan()</strong>
   * <strong>deg2rad()</strong>


id: sinh
type: function
doc:
<comment>Description:</comment>
  双曲線正弦（ハイパボリックサイン）
  
  <strong>$num</strong> のハイパボリックサインを返します。 これは、<return>(exp($num) - exp(-$num))/2</return> で定義されます。

<comment>Param:</comment>
  <info>float</info>  <strong>$num</strong>  処理する引数。

<comment>Return:</comment>
  <info>float</info>  <strong>$num</strong> のハイパボリックサインを返します。

<comment>See Also:</comment>
   * <strong>sin()</strong>
   * <strong>asinh()</strong>
   * <strong>cosh()</strong>
   * <strong>tanh()</strong>


id: sleep
type: function
doc:
<comment>Description:</comment>
  実行を遅延させる
  
  <strong>$seconds</strong> で与えられた秒数分プログラムの実行を遅延させます。
  
  1秒以下の精度でプログラムの実行を遅延させる用途には、 <strong>usleep()</strong> を使って下さい。 なぜなら、<strong>sleep()</strong>
  は整数値を期待するためです。 たとえば sleep(0.25) は、プログラムの実行を <return>0</return> 秒停止させてしまいま
  す。

<comment>Param:</comment>
  <info>int</info>  <strong>$seconds</strong>  秒単位の停止時間。 (<return>0</return> 以上の値でなければなりません)

<comment>Return:</comment>
  <info>int</info>  成功した場合にゼロを返します。
       
       シグナルで中断した場合、<strong>sleep()</strong> はゼロ以外の値を返します。 Windows では、この値は常に <return>192</return>
       (Windows API の定数 <info>WAIT_IO_COMPLETION</info> の値) です。 その他のプラットフォームでは、残りの遅延
       秒数を返します。

<comment>See Also:</comment>
   * <strong>usleep()</strong>
   * <strong>time_nanosleep()</strong>
   * <strong>time_sleep_until()</strong>
   * <strong>set_time_limit()</strong>


id: snmp2_get
type: function
doc:
<comment>Description:</comment>
  SNMP オブジェクトを取得する
  
  <strong>snmp2_get()</strong> 関数は、 <strong>$object_id</strong> で指定した SNMP オブジェクトの値を取得します。

<comment>Param:</comment>
  <info>string</info>        <strong>$hostname</strong>   SNMP エージェント。
  <info>string</info>        <strong>$community</strong>  リードコミュニティ。
  <info>array|string</info>  <strong>$object_id</strong>  SNMP オブジェクト。
  <info>int</info>           <strong>$timeout</strong>    最初のタイムアウトまでのマイクロ秒数。
  <info>int</info>           <strong>$retries</strong>    タイムアウト発生時の再試行回数。

<comment>Return:</comment>
  <info>mixed</info>  成功した場合に SNMP オブジェクトの値、エラー時に <info>false</info> を返します。

<comment>See Also:</comment>
   * <strong>snmp2_set()</strong>


id: snmp2_getnext
type: function
doc:
<comment>Description:</comment>
  指定したオブジェクト ID に続く SNMP オブジェクトを取得する
  
  <strong>snmp2_get_next()</strong> 関数は、 <strong>$object_id</strong> で指定したオブジェクトに続く SNMP オブジェクトの値を取得しま
  す。

<comment>Param:</comment>
  <info>string</info>        <strong>$hostname</strong>   SNMP エージェント (サーバー) のホスト名。
  <info>string</info>        <strong>$community</strong>  リードコミュニティ。
  <info>array|string</info>  <strong>$object_id</strong>  前にある SNMP オブジェクトの ID。
  <info>int</info>           <strong>$timeout</strong>    最初のタイムアウトまでのマイクロ秒数。
  <info>int</info>           <strong>$retries</strong>    タイムアウト発生時の再試行回数。

<comment>Return:</comment>
  <info>mixed</info>  成功した場合に SNMP オブジェクトの値、エラー時に <info>false</info> を返します。 エラー時には E_WARNING
         が発生します。

<comment>See Also:</comment>
   * <strong>snmp2_get()</strong>
   * <strong>snmp2_walk()</strong>


id: snmp2_real_walk
type: function
doc:
<comment>Description:</comment>
  指定したすべてのオブジェクトとそのオブジェクト ID を返す
  
  <strong>snmp2_real_walk()</strong> 関数は、 <strong>$object_id</strong> から始まる SNMP オブジェクトを走査し、その値とオブジェクト
  ID を返します。

<comment>Param:</comment>
  <info>string</info>        <strong>$hostname</strong>   SNMP エージェント (サーバー) のホスト名。
  <info>string</info>        <strong>$community</strong>  リードコミュニティ。
  <info>array|string</info>  <strong>$object_id</strong>  前にある SNMP オブジェクト ID。
  <info>int</info>           <strong>$timeout</strong>    最初のタイムアウトまでのマイクロ秒数。
  <info>int</info>           <strong>$retries</strong>    タイムアウト発生時の再試行回数。

<comment>Return:</comment>
  <info>array|false</info>  成功した場合に SNMP オブジェクト ID とその値の連想配列。エラー時に <info>false</info> を返します。
               エラー時には E_WARNING が発生します。

<comment>See Also:</comment>
   * <strong>snmp2_walk()</strong>


id: snmp2_set
type: function
doc:
<comment>Description:</comment>
  SNMP オブジェクトの値を設定する
  
  <strong>snmp2_set()</strong> は、 <strong>$object_id</strong> で指定した SNMP オブジェクトの値を設定します。

<comment>Param:</comment>
  <info>string</info>        <strong>$hostname</strong>   SNMP エージェント (サーバー) のホスト名。
  <info>string</info>        <strong>$community</strong>  ライトコミュニティ。
  <info>array|string</info>  <strong>$object_id</strong>  SNMP オブジェクト ID。
  <info>array|string</info>  <strong>$type</strong>       MIB は、オブジェクトIDごとのタイプを定義します。 これは、以下の一覧から
                            指定される一文字でなければなりません。
                            
                            SNMP ライブラリをコンパイルする際、 <info>OPAQUE_SPECIAL_TYPES</info> が定義されてい
                            た場合、 以下も正しい値になります:
                            
                            これらの大半は、対応する ASN.1 の型を使います。's', 'x', 'd' および 'b'
                            はどれも OCTET STRING を異なる方法で表したものであり、'u' も Gauge32 値
                            を扱うためのものです。
                            
                            MIB ファイルが "snmp_read_mib" や libsnmp の設定で MIB ツリーに読み込ま
                            れている場合は、 <strong>$type</strong> に '=' を使うことができます。 これはすべてのオブ
                            ジェクト ID を表し、型は自動的に MIB から読み込みます。
                            
                            "SYNTAX    BITS {telnet(0), ftp(1), http(2), icmp(3), snmp(4), ssh(5),
                            https(6)}" のような BITS 型の値変数を設定する方法は二通りあることに注意
                            しましょう。
                            
                            型として "b" を使い、ビット番号の一覧を指定する。この方法はおすすめしま
                            せん。 同じ OID に対して GET クエリを実行しても 0xF8 などを返すからで
                            す。
                            
                            Using type "x" and a hex number but without(!) the usual "0x" prefix. 型
                            として "x" を使い、通常のプレフィックス "0x" をつけずに(!) 16 進数を指定
                            する。
                            
                            詳細は、サンプルを参照ください。
  <info>array|string</info>  <strong>$value</strong>      新しい値。
  <info>int</info>           <strong>$timeout</strong>    最初のタイムアウトまでのマイクロ秒数。
  <info>int</info>           <strong>$retries</strong>    タイムアウト発生時の再試行回数。

<comment>Return:</comment>
  <info>bool</info>  成功した場合に <info>true</info> を、失敗した場合に <info>false</info> を返します。
        
        SNMP ホストがデータ型を却下すると、"Warning: Error in packet.  Reason: (badValue) The value
        given has the wrong type or length." のような’ E_WARNING メッセージが表示されます。未知の
        OID あるいは無効な OID を指定した場合は、おそらく "Could not add variable" のような警告とな
        ります。

<comment>See Also:</comment>
   * <strong>snmp2_get()</strong>


id: snmp2_walk
type: function
doc:
<comment>Description:</comment>
  すべての SNMP オブジェクトをエージェントから取得する
  
  <strong>snmp2_walk()</strong> は、 <strong>$hostname</strong> で指定した SNMP エージェントからすべての値を読み込みます。

<comment>Param:</comment>
  <info>string</info>        <strong>$hostname</strong>   SNMP エージェント (サーバー)。
  <info>string</info>        <strong>$community</strong>  リードコミュニティ。
  <info>array|string</info>  <strong>$object_id</strong>  <info>null</info> の場合は <strong>$object_id</strong> は SNMP オブジェクトツリーのルートとなり、 ツ
                            リー配下のすべてのオブジェクトを配列で返します。
                            
                            <strong>$object_id</strong> を指定すると、 その <strong>$object_id</strong> 以下のすべての SNMP オブジェク
                            トを返します。
  <info>int</info>           <strong>$timeout</strong>    最初のタイムアウトまでのマイクロ秒数。
  <info>int</info>           <strong>$retries</strong>    タイムアウト発生時の再試行回数。

<comment>Return:</comment>
  <info>array|false</info>  <strong>$object_id</strong> をルートとするすべての SNMP オブジェクトの値の配列、あるいはエラー時に
               <info>false</info> を返します。

<comment>See Also:</comment>
   * <strong>snmp2_real_walk()</strong>


id: snmp3_get
type: function
doc:
<comment>Description:</comment>
  SNMP オブジェクトを取得する
  
  <strong>snmp3_get()</strong> 関数は、 <strong>$object_id</strong> で指定した SNMP オブジェクトの値を取得します。

<comment>Param:</comment>
  <info>string</info>        <strong>$hostname</strong>            SNMP エージェント (サーバー) のホスト名。
  <info>string</info>        <strong>$security_name</strong>       セキュリティ名。通常はユーザー名のようなもの。
  <info>string</info>        <strong>$security_level</strong>      セキュリティレベル (noAuthNoPriv|authNoPriv|authPriv)。
  <info>string</info>        <strong>$auth_protocol</strong>       認証プロトコル (<return>"MD5"</return>, <return>"SHA"</return>, <return>"SHA256"</return>, <return>"SHA512"</return>)。
  <info>string</info>        <strong>$auth_passphrase</strong>     認証パスフレーズ。
  <info>string</info>        <strong>$privacy_protocol</strong>    プライバシープロトコル (DES あるいは AES)。
  <info>string</info>        <strong>$privacy_passphrase</strong>  プライバシーパスフレーズ。
  <info>array|string</info>  <strong>$object_id</strong>           SNMP オブジェクト ID。
  <info>int</info>           <strong>$timeout</strong>             最初のタイムアウトまでのマイクロ秒数。
  <info>int</info>           <strong>$retries</strong>             タイムアウト発生時の再試行回数。

<comment>Return:</comment>
  <info>mixed</info>  成功した場合に SNMP オブジェクトの値、エラー時に <info>false</info> を返します。

<comment>See Also:</comment>
   * <strong>snmp3_set()</strong>


id: snmp3_getnext
type: function
doc:
<comment>Description:</comment>
  指定したオブジェクト ID に続く SNMP オブジェクトを取得する
  
  <strong>snmp3_getnext()</strong> 関数は、 <strong>$object_id</strong> で指定したオブジェクトに続く SNMP オブジェクトの値を取得しま
  す。

<comment>Param:</comment>
  <info>string</info>        <strong>$hostname</strong>            SNMP エージェント (サーバー) のホスト名。
  <info>string</info>        <strong>$security_name</strong>       セキュリティ名。通常はユーザー名のようなもの。
  <info>string</info>        <strong>$security_level</strong>      セキュリティレベル (noAuthNoPriv|authNoPriv|authPriv)。
  <info>string</info>        <strong>$auth_protocol</strong>       認証プロトコル (<return>"MD5"</return>, <return>"SHA"</return>, <return>"SHA256"</return>, <return>"SHA512"</return>)。
  <info>string</info>        <strong>$auth_passphrase</strong>     認証パスフレーズ。
  <info>string</info>        <strong>$privacy_protocol</strong>    プライバシープロトコル (DES あるいは AES)。
  <info>string</info>        <strong>$privacy_passphrase</strong>  プライバシーパスフレーズ。
  <info>array|string</info>  <strong>$object_id</strong>           SNMP オブジェクト ID。
  <info>int</info>           <strong>$timeout</strong>             最初のタイムアウトまでのマイクロ秒数。
  <info>int</info>           <strong>$retries</strong>             タイムアウト発生時の再試行回数。

<comment>Return:</comment>
  <info>mixed</info>  成功した場合に SNMP オブジェクトの値、エラー時に <info>false</info> を返します。 エラー時には E_WARNING
         が発生します。

<comment>See Also:</comment>
   * <strong>snmp3_get()</strong>
   * <strong>snmp3_walk()</strong>


id: snmp3_real_walk
type: function
doc:
<comment>Description:</comment>
  指定したすべてのオブジェクトとそのオブジェクト ID を返す
  
  <strong>snmp3_real_walk()</strong> 関数は、 <strong>$object_id</strong> から始まる SNMP オブジェクトを走査し、その値とオブジェクト
  ID を返します。

<comment>Param:</comment>
  <info>string</info>        <strong>$hostname</strong>            SNMP エージェント (サーバー) のホスト名。
  <info>string</info>        <strong>$security_name</strong>       セキュリティ名。通常はユーザー名のようなもの。
  <info>string</info>        <strong>$security_level</strong>      セキュリティレベル (noAuthNoPriv|authNoPriv|authPriv)。
  <info>string</info>        <strong>$auth_protocol</strong>       認証プロトコル (<return>"MD5"</return>, <return>"SHA"</return>, <return>"SHA256"</return>, <return>"SHA512"</return>)。
  <info>string</info>        <strong>$auth_passphrase</strong>     認証パスフレーズ。
  <info>string</info>        <strong>$privacy_protocol</strong>    プライバシープロトコル (DES あるいは AES)。
  <info>string</info>        <strong>$privacy_passphrase</strong>  プライバシーパスフレーズ。
  <info>array|string</info>  <strong>$object_id</strong>           SNMP オブジェクト ID。
  <info>int</info>           <strong>$timeout</strong>             最初のタイムアウトまでのマイクロ秒数。
  <info>int</info>           <strong>$retries</strong>             タイムアウト発生時の再試行回数。

<comment>Return:</comment>
  <info>array|false</info>  成功した場合に SNMP オブジェクト ID とその値の連想配列。エラー時に <info>false</info> を返します。
               エラー時には E_WARNING が発生します。

<comment>See Also:</comment>
   * <strong>snmpwalk()</strong>


id: snmp3_set
type: function
doc:
<comment>Description:</comment>
  SNMP オブジェクトの値を設定する
  
  <strong>snmp3_set()</strong> は、 <strong>$object_id</strong> で指定した SNMP オブジェクトの値を設定します。
  
  セキュリティレベルに auth や priv を使っていなくても、 protocol/password には有効な値を指定しなく
  てはなりません。

<comment>Param:</comment>
  <info>string</info>        <strong>$hostname</strong>            SNMP エージェント (サーバー) のホスト名。
  <info>string</info>        <strong>$security_name</strong>       セキュリティ名。通常はユーザー名のようなもの。
  <info>string</info>        <strong>$security_level</strong>      セキュリティレベル (noAuthNoPriv|authNoPriv|authPriv)。
  <info>string</info>        <strong>$auth_protocol</strong>       認証プロトコル (MD5 あるいは SHA)。
  <info>string</info>        <strong>$auth_passphrase</strong>     認証パスフレーズ。
  <info>string</info>        <strong>$privacy_protocol</strong>    プライバシープロトコル (DES あるいは AES)。
  <info>string</info>        <strong>$privacy_passphrase</strong>  プライバシーパスフレーズ。
  <info>array|string</info>  <strong>$object_id</strong>           SNMP オブジェクト ID。
  <info>array|string</info>  <strong>$type</strong>                MIB は、オブジェクトIDごとのタイプを定義します。 これは、以下の
                                     一覧から指定される一文字でなければなりません。
                                     
                                     SNMP ライブラリをコンパイルする際、 <info>OPAQUE_SPECIAL_TYPES</info> が定義
                                     されていた場合、 以下も正しい値になります:
                                     
                                     これらの大半は、対応する ASN.1 の型を使います。's', 'x', 'd' お
                                     よび 'b' はどれも OCTET STRING を異なる方法で表したものであり、
                                     'u' も Gauge32 値を扱うためのものです。
                                     
                                     MIB ファイルが "snmp_read_mib" や libsnmp の設定で MIB ツリーに
                                     読み込まれている場合は、 <strong>$type</strong> に '=' を使うことができます。 こ
                                     れはすべてのオブジェクト ID を表し、型は自動的に MIB から読み込
                                     みます。
                                     
                                     "SYNTAX    BITS {telnet(0), ftp(1), http(2), icmp(3), snmp(4),
                                     ssh(5), https(6)}" のような BITS 型の値変数を設定する方法は二通
                                     りあることに注意しましょう。
                                     
                                     型として "b" を使い、ビット番号の一覧を指定する。この方法はおす
                                     すめしません。 同じ OID に対して GET クエリを実行しても 0xF8 な
                                     どを返すからです。
                                     
                                     Using type "x" and a hex number but without(!) the usual "0x"
                                     prefix. 型として "x" を使い、通常のプレフィックス "0x" をつけず
                                     に(!) 16 進数を指定する。
                                     
                                     詳細は、サンプルを参照ください。
  <info>array|string</info>  <strong>$value</strong>               新しい値。
  <info>int</info>           <strong>$timeout</strong>             最初のタイムアウトまでのマイクロ秒数。
  <info>int</info>           <strong>$retries</strong>             タイムアウト発生時の再試行回数。

<comment>Return:</comment>
  <info>bool</info>  成功した場合に <info>true</info> を、失敗した場合に <info>false</info> を返します。
        
        SNMP ホストがデータ型を却下すると、"Warning: Error in packet.  Reason: (badValue) The value
        given has the wrong type or length." のような’ E_WARNING メッセージが表示されます。未知の
        OID あるいは無効な OID を指定した場合は、おそらく "Could not add variable" のような警告とな
        ります。


id: snmp3_walk
type: function
doc:
<comment>Description:</comment>
  すべての SNMP オブジェクトをエージェントから取得する
  
  <strong>snmp3_walk()</strong> 関数は、 <strong>$hostname</strong> で指定した SNMP エージェントからすべての値を読み込みます。
  
  セキュリティレベルに auth や priv を使っていなくても、  protocol/password には有効な値を指定しなく
  てはなりません。

<comment>Param:</comment>
  <info>string</info>        <strong>$hostname</strong>            SNMP エージェント (サーバー) のホスト名。
  <info>string</info>        <strong>$security_name</strong>       セキュリティ名。通常はユーザー名のようなもの。
  <info>string</info>        <strong>$security_level</strong>      セキュリティレベル (noAuthNoPriv|authNoPriv|authPriv)。
  <info>string</info>        <strong>$auth_protocol</strong>       認証プロトコル (<return>"MD5"</return>, <return>"SHA"</return>, <return>"SHA256"</return>, <return>"SHA512"</return>)。
  <info>string</info>        <strong>$auth_passphrase</strong>     認証パスフレーズ。
  <info>string</info>        <strong>$privacy_protocol</strong>    プライバシープロトコル (DES あるいは AES)。
  <info>string</info>        <strong>$privacy_passphrase</strong>  プライバシーパスフレーズ。
  <info>array|string</info>  <strong>$object_id</strong>           <info>null</info> の場合は <strong>$object_id</strong> は SNMP オブジェクトツリーのルートとな
                                     り、 ツリー配下のすべてのオブジェクトを配列で返します。
                                     
                                     <strong>$object_id</strong> を指定すると、 その <strong>$object_id</strong> 以下のすべての SNMP
                                     オブジェクトを返します。
  <info>int</info>           <strong>$timeout</strong>             最初のタイムアウトまでのマイクロ秒数。
  <info>int</info>           <strong>$retries</strong>             タイムアウト発生時の再試行回数。

<comment>Return:</comment>
  <info>array|false</info>  <strong>$object_id</strong> をルートとするすべての SNMP オブジェクトの値の配列、あるいはエラー時に
               <info>false</info> を返します。

<comment>See Also:</comment>
   * <strong>snmp3_real_walk()</strong>


id: snmp_get_quick_print
type: function
doc:
<comment>Description:</comment>
  NET-SNMP ライブラリの quick_print の現在の設定値を取得する
    
  
  NET-SNMP ライブラリに保持された quick_print の現在の値を返します。 デフォルトでは、quick_print は
  オフです。

<comment>Return:</comment>
  <info>bool</info>  quick_print がオンの場合に <info>true</info>、それ以外の場合に <info>false</info> を返します。

<comment>See Also:</comment>
   * 
     quick_print の役割に関する詳細な説明は、
     <strong>snmp_set_quick_print()</strong> を参照ください。
    


id: snmp_get_valueretrieval
type: function
doc:
<comment>Description:</comment>
  SNMP の値が返される方法を返す

<comment>Return:</comment>
  <info>int</info>  OR でつないだ定数 ( <info>SNMP_VALUE_LIBRARY</info> あるいは <info>SNMP_VALUE_PLAIN</info>) に、場合によって
       SNMP_VALUE_OBJECT を組み合わせて返します。

<comment>See Also:</comment>
   * <strong>snmp_set_valueretrieval()</strong>
   * 


id: snmp_read_mib
type: function
doc:
<comment>Description:</comment>
  アクティブな MIB ツリーの中に MIB ファイルを読み込んでパースする
    
  
  この関数は、ベンダー固有などの追加の MIB を読み込んで、 <return>VENDOR-MIB::foo.1</return> のような可読形式の OID
  を取得します。
  
  MIB を読み込む順序は重要で、参照先のオブジェクトが解決できなければ Net-SNMP ライブラリが警告を表示
  します。

<comment>Param:</comment>
  <info>string</info>  <strong>$filename</strong>  MIB のファイル名。

<comment>Return:</comment>
  <info>bool</info>  成功した場合に <info>true</info> を、失敗した場合に <info>false</info> を返します。


id: snmp_set_enum_print
type: function
doc:
<comment>Description:</comment>
  すべての enum を、実際の整数値ではなく enum 値とともに返す
    
  
  この関数は、snmpwalk/snmpget などが自動的に MIB の enum 値を探して可読形式の文字列で返すかどうかを
  切り替えます。

<comment>Param:</comment>
  <info>bool</info>  <strong>$enable</strong>  この値は boolean として Net-SNMP ライブラリが解釈します。"0" あるいは "1" しか指定
                 できません。

<comment>Return:</comment>
  <info>true</info>  常に <info>true</info> を返します。


id: snmp_set_oid_numeric_print
type: function
doc:
<comment>Description:</comment>
  snmp_set_oid_output_format のエイリアス
  
  この関数は次の関数のエイリアスです。 <strong>snmp_set_oid_output_format()</strong>

<comment>See Also:</comment>
   * <strong>snmp_set_oid_output_format()</strong>


id: snmp_set_oid_output_format
type: function
doc:
<comment>Description:</comment>
  OID の出力形式を設定する
    
  
  <strong>snmp_set_oid_output_format()</strong> は、 出力形式を完全か数値のいずれかに設定します。

<comment>Param:</comment>
  <info>int</info>  <strong>$format</strong>  

<comment>Return:</comment>
  <info>true</info>  常に <info>true</info> を返します。


id: snmp_set_quick_print
type: function
doc:
<comment>Description:</comment>
  NET-SNMP ライブラリで enable の値を設定する
    
  
  NET-SNMP ライブラリで <strong>$enable</strong> の値を設定します。この値を (1) に設定した場合、SNMP ライブラリは、
  '簡潔に表示された (quick printed)' 値を返します。 これは、値のみが出力されることを意味します。
  <strong>$enable</strong> が有効でない場合(デフォルト)、NET-SNMP ライブラリは、 (IP アドレスまたは OID のような)その
  値の種類を含む、より詳細な情報を 出力します。 加えて、quick_print が有効でない場合、ライブラリは 3
  文字以下の全ての 文字列について 16 進数値も出力します。
  
  デフォルトで、NET-SNMP ライブラリは冗長な値を返します。 quick_print は、値のみを返すために用いられ
  ます。
  
  現在、文字列は引用符で括られて返されますが、 この動作は将来のリリースでは修正される予定です。

<comment>Param:</comment>
  <info>bool</info>  <strong>$enable</strong>  

<comment>Return:</comment>
  <info>true</info>  常に <info>true</info> を返します。

<comment>See Also:</comment>
   * <strong>snmp_get_quick_print()</strong>


id: snmp_set_valueretrieval
type: function
doc:
<comment>Description:</comment>
  SNMP の値が返される方法を設定する

<comment>Param:</comment>
  <info>int</info>  <strong>$method</strong>  

<comment>Return:</comment>
  <info>true</info>  常に <info>true</info> を返します。

<comment>See Also:</comment>
   * <strong>snmp_get_valueretrieval()</strong>
   * 


id: snmpget
type: function
doc:
<comment>Description:</comment>
  SNMP オブジェクトを取得する
  
  <strong>snmpget()</strong> は <strong>$object_id</strong> で指定した SNMP オブジェクトの値を読みとるために使用されます。

<comment>Param:</comment>
  <info>string</info>        <strong>$hostname</strong>   SNMP エージェント。
  <info>string</info>        <strong>$community</strong>  リードコミュニティ。
  <info>array|string</info>  <strong>$object_id</strong>  SNMP オブジェクト。
  <info>int</info>           <strong>$timeout</strong>    最初のタイムアウトまでのマイクロ秒数。
  <info>int</info>           <strong>$retries</strong>    タイムアウトが発生したときの再試行の回数。

<comment>Return:</comment>
  <info>mixed</info>  成功した場合に SNMP オブジェクトの値、失敗した場合に <info>false</info> を返します。

<comment>See Also:</comment>
   * <strong>snmpset()</strong>


id: snmpgetnext
type: function
doc:
<comment>Description:</comment>
  指定したオブジェクト ID に続く SNMP オブジェクトを取得する
    
  
  <strong>snmpgetnext()</strong> 関数は、 <strong>$object_id</strong> で指定したオブジェクトに続く SNMP オブジェクトの値を取得します。

<comment>Param:</comment>
  <info>string</info>        <strong>$hostname</strong>   SNMP エージェント (サーバー) のホスト名。
  <info>string</info>        <strong>$community</strong>  リードコミュニティ。
  <info>array|string</info>  <strong>$object_id</strong>  前にある SNMP オブジェクトの ID。
  <info>int</info>           <strong>$timeout</strong>    最初のタイムアウトまでのマイクロ秒数。
  <info>int</info>           <strong>$retries</strong>    タイムアウト発生時の再試行回数。

<comment>Return:</comment>
  <info>mixed</info>  成功した場合に SNMP オブジェクトの値、エラー時に <info>false</info> を返します。 エラー時には E_WARNING
         が発生します。

<comment>See Also:</comment>
   * <strong>snmpget()</strong>
   * <strong>snmpwalk()</strong>


id: snmprealwalk
type: function
doc:
<comment>Description:</comment>
  指定したオブジェクトに関するオブジェクト ID
     を含むすべてのオブジェクトを返す
    
  
  <strong>snmprealwalk()</strong> 関数は、 <strong>$object_id</strong> から始まる SNMP オブジェクトを走査し、その値とオブジェクト ID
  を返します。

<comment>Param:</comment>
  <info>string</info>        <strong>$hostname</strong>   SNMP エージェント (サーバー) のホスト名。
  <info>string</info>        <strong>$community</strong>  リードコミュニティ。
  <info>array|string</info>  <strong>$object_id</strong>  前にある SNMP オブジェクト ID。
  <info>int</info>           <strong>$timeout</strong>    最初のタイムアウトまでのマイクロ秒数。
  <info>int</info>           <strong>$retries</strong>    タイムアウト発生時の再試行回数。

<comment>Return:</comment>
  <info>array|false</info>  成功した場合に SNMP オブジェクト ID とその値の連想配列。エラー時に <info>false</info> を返します。
               エラー時には E_WARNING が発生します。

<comment>See Also:</comment>
   * <strong>snmpwalk()</strong>


id: snmpset
type: function
doc:
<comment>Description:</comment>
  SNMP オブジェクトの値を設定する
  
  <strong>snmpset()</strong> 関数は、 <strong>$object_id</strong>で指定した SNMP オブジェクトの 値を設定するために使用します。

<comment>Param:</comment>
  <info>string</info>        <strong>$hostname</strong>   SNMP エージェント (サーバー) のホスト名。
  <info>string</info>        <strong>$community</strong>  ライトコミュニティ。
  <info>array|string</info>  <strong>$object_id</strong>  SNMP オブジェクト ID。
  <info>array|string</info>  <strong>$type</strong>       MIB は、オブジェクトIDごとのタイプを定義します。 これは、以下の一覧から
                            指定される一文字でなければなりません。
                            
                            SNMP ライブラリをコンパイルする際、 <info>OPAQUE_SPECIAL_TYPES</info> が定義されてい
                            た場合、 以下も正しい値になります:
                            
                            これらの大半は、対応する ASN.1 の型を使います。's', 'x', 'd' および 'b'
                            はどれも OCTET STRING を異なる方法で表したものであり、'u' も Gauge32 値
                            を扱うためのものです。
                            
                            MIB ファイルが "snmp_read_mib" や libsnmp の設定で MIB ツリーに読み込ま
                            れている場合は、 <strong>$type</strong> に '=' を使うことができます。 これはすべてのオブ
                            ジェクト ID を表し、型は自動的に MIB から読み込みます。
                            
                            "SYNTAX    BITS {telnet(0), ftp(1), http(2), icmp(3), snmp(4), ssh(5),
                            https(6)}" のような BITS 型の値変数を設定する方法は二通りあることに注意
                            しましょう。
                            
                            型として "b" を使い、ビット番号の一覧を指定する。この方法はおすすめしま
                            せん。 同じ OID に対して GET クエリを実行しても 0xF8 などを返すからで
                            す。
                            
                            Using type "x" and a hex number but without(!) the usual "0x" prefix. 型
                            として "x" を使い、通常のプレフィックス "0x" をつけずに(!) 16 進数を指定
                            する。
                            
                            詳細は、サンプルを参照ください。
  <info>array|string</info>  <strong>$value</strong>      新しい値。
  <info>int</info>           <strong>$timeout</strong>    最初のタイムアウトまでのマイクロ秒数。
  <info>int</info>           <strong>$retries</strong>    タイムアウト発生時の再試行回数。

<comment>Return:</comment>
  <info>bool</info>  成功した場合に <info>true</info> を、失敗した場合に <info>false</info> を返します。
        
        SNMP ホストがデータ型を却下すると、"Warning: Error in packet.  Reason: (badValue) The value
        given has the wrong type or length." のような’ E_WARNING メッセージが表示されます。未知の
        OID あるいは無効な OID を指定した場合は、おそらく "Could not add variable" のような警告とな
        ります。

<comment>See Also:</comment>
   * <strong>snmpget()</strong>


id: snmpwalk
type: function
doc:
<comment>Description:</comment>
  エージェントから全ての SNMP オブジェクトを取得する
  
  <strong>snmpwalk()</strong> 関数は、<strong>$hostname</strong> で指定した SNMP エージェントから全ての値を読みとるのに使用します。

<comment>Param:</comment>
  <info>string</info>        <strong>$hostname</strong>   SNMP エージェント (サーバー)。
  <info>string</info>        <strong>$community</strong>  リードコミュニティ。
  <info>array|string</info>  <strong>$object_id</strong>  <info>null</info> の場合は、<strong>$object_id</strong> が SNMP オブジェクトツリーのルートとして解釈さ
                            れ、 ツリーの配下のすべてのオブジェクトを配列として返します。
                            
                            <strong>$object_id</strong> を指定した場合は、 その <strong>$object_id</strong> の配下のすべての SNMP オブ
                            ジェクトを返します。
  <info>int</info>           <strong>$timeout</strong>    最初のタイムアウトまでのマイクロ秒数。
  <info>int</info>           <strong>$retries</strong>    タイムアウト発生時の再試行回数。

<comment>Return:</comment>
  <info>array|false</info>  <strong>object_id()</strong> からの SNMP オブジェクトの値の配列をルートとして返します。 エラーの場合に
               <info>false</info> を返します。

<comment>See Also:</comment>
   * <strong>snmprealwalk()</strong>


id: snmpwalkoid
type: function
doc:
<comment>Description:</comment>
  ネットワークエンティティに関する情報ツリーを検索する
    
  
  <strong>snmpwalkoid()</strong> 関数は、<strong>$hostname</strong> で指定した SNMP エージェントから すべてのオブジェクト ID とその値
  を読みこむために使用します。
  
  <strong>snmpwalkoid()</strong> および <strong>snmpwalk()</strong> は、歴史的経緯により残されているものです。 どちらも、下位互換のた
  めに提供されています。 代わりに <strong>snmprealwalk()</strong> を使用してください。

<comment>Param:</comment>
  <info>string</info>        <strong>$hostname</strong>   SNMP エージェント。
  <info>string</info>        <strong>$community</strong>  リードコミュニティ。
  <info>array|string</info>  <strong>$object_id</strong>  <info>null</info> の場合は、<strong>$object_id</strong> が SNMP オブジェクトツリーのルートとして解釈さ
                            れ、 ツリーの配下のすべてのオブジェクトを配列として返します。
                            
                            <strong>$object_id</strong> を指定した場合は、 その <strong>$object_id</strong> の配下のすべての SNMP オブ
                            ジェクトを返します。
  <info>int</info>           <strong>$timeout</strong>    最初のタイムアウトまでのマイクロ秒数。
  <info>int</info>           <strong>$retries</strong>    タイムアウト発生時の再試行回数。

<comment>Return:</comment>
  <info>array|false</info>  <strong>object_id()</strong> からの SNMP オブジェクトの値の配列をルートとして返します。 エラーの場合に
               <info>false</info> を返します。

<comment>See Also:</comment>
   * <strong>snmpwalk()</strong>


id: socket_accept
type: function
doc:
<comment>Description:</comment>
  ソケットへの接続を許可する
  
  <strong>socket_create()</strong> を使用してソケット <strong>$socket</strong> を作成した後、 <strong>socket_bind()</strong> で名前に関連付け、
  <strong>socket_listen()</strong> で接続をモニタします。この関数は、 このソケットへの接続を許可します。接続に成功す
  ると、新しい <class>Socket</class> クラスのインスタンスが返されます。 このインスタンスは通信の際に使用されます。
  ソケット上に複数の接続がキューで待っている場合、最初の接続が使用 されます。接続待ちがない場合、
  <strong>socket_accept()</strong> は接続が存在するまでブロックされます。 <strong>$socket</strong> が <strong>socket_set_blocking()</strong> または
  <strong>socket_set_nonblock()</strong> により非ブロックモードで 作成された場合、<info>false</info> が返されます。
  
  <strong>socket_accept()</strong> により返された <class>Socket</class> クラスのインスタンスは、 新規接続を許可するために使用するこ
  とはできません。この場合でも 元の接続待ちのソケット <strong>$socket</strong> は オープンされたままであり、再使用可
  能です。

<comment>Param:</comment>
  <info>Socket</info>  <strong>$socket</strong>  <strong>socket_create()</strong> で作成した <class>Socket</class> クラスのインスタンス。

<comment>Return:</comment>
  <info>Socket|false</info>  成功した場合に新しい <class>Socket</class> クラスのインスタンスを、 エラー時に <info>false</info> を返します。
                実際のエラーコードは、<strong>socket_last_error()</strong> を コールすることで取得可能です。このコー
                ドを <strong>socket_strerror()</strong> に渡すことで、 エラーの内容を文字列で取得することが可能です。

<comment>See Also:</comment>
   * <strong>socket_connect()</strong>
   * <strong>socket_listen()</strong>
   * <strong>socket_create()</strong>
   * <strong>socket_bind()</strong>
   * <strong>socket_strerror()</strong>


id: socket_addrinfo_bind
type: function
doc:
<comment>Description:</comment>
  与えられた addrinfo から、ソケットを作成してバインドする
  
  <class>Socket</class> クラスのインスタンスを作成し、 与えられた <class>AddressInfo</class> インスタンスにバインドします。 この関
  数の戻り値は <strong>socket_listen()</strong> で使えます。

<comment>Param:</comment>
  <info>AddressInfo</info>  <strong>$address</strong>  <strong>socket_addrinfo_lookup()</strong> 関数で作られた <class>AddressInfo</class> クラスのインスタンス。

<comment>Return:</comment>
  <info>Socket|false</info>  成功したときは <class>Socket</class> クラスのインスタンスを返します。 失敗したときは <info>null</info> を返しま
                す。

<comment>See Also:</comment>
   * <strong>socket_addrinfo_connect()</strong>
   * <strong>socket_addrinfo_explain()</strong>
   * <strong>socket_addrinfo_lookup()</strong>
   * <strong>socket_listen()</strong>


id: socket_addrinfo_connect
type: function
doc:
<comment>Description:</comment>
  与えられた addrinfo から、ソケットを作って接続する
  
  <class>Socket</class> クラスのインスタンスを作り、 与えられた <class>AddressInfo</class> インスタンスに接続します。 この関数の戻
  り値で、残りのソケット関数が使えます。

<comment>Param:</comment>
  <info>AddressInfo</info>  <strong>$address</strong>  <strong>socket_addrinfo_lookup()</strong> 関数で作られた <class>AddressInfo</class> クラスのインスタンス。

<comment>Return:</comment>
  <info>Socket|false</info>  成功したときは <class>Socket</class> クラスのインスタンスを返します。 失敗したときは <info>null</info> を返しま
                す。

<comment>See Also:</comment>
   * <strong>socket_addrinfo_bind()</strong>
   * <strong>socket_addrinfo_explain()</strong>
   * <strong>socket_addrinfo_lookup()</strong>


id: socket_addrinfo_explain
type: function
doc:
<comment>Description:</comment>
  addrinfo に関する情報を取得する
  
  <strong>socket_addrinfo_explain()</strong> 関数は、下層にある <return>addrinfo</return> 構造体の内容を公開します。

<comment>Param:</comment>
  <info>AddressInfo</info>  <strong>$address</strong>  <strong>socket_addrinfo_lookup()</strong> で作られた <class>AddressInfo</class> クラスのインスタンス。

<comment>Return:</comment>
  <info>array</info>  <return>addrinfo</return> 構造体に入っているフィールドが含まれた配列を返します。

<comment>See Also:</comment>
   * <strong>socket_addrinfo_bind()</strong>
   * <strong>socket_addrinfo_connect()</strong>
   * <strong>socket_addrinfo_lookup()</strong>


id: socket_addrinfo_lookup
type: function
doc:
<comment>Description:</comment>
  与えられたホスト名に関する getaddrinfo の内容を配列で取得する
  
  <strong>$host</strong> に接続できる別のやり方を探します。 この関数が返す配列は <strong>socket_addrinfo_bind()</strong> を使ってバイ
  ンドできる <class>AddressInfo</class> クラスのインスタンスが含まれています。

<comment>Param:</comment>
  <info>string</info>       <strong>$host</strong>     探す対象のホスト名
  <info>string|null</info>  <strong>$service</strong>  接続するサービス。service が数値形式の文字列の場合、 ポート番号に翻訳されま
                         す。 それ以外の場合、ネットワークサービス名に翻訳されます。 これは、オペ
                         レーティングシステムによってポート番号にマップされます。
  <info>array</info>        <strong>$hints</strong>    アドレスを選択する条件を与えるヒント。 getaddrinfo によって定義されるヒント
                         を指定できます。

<comment>Return:</comment>
  <info>array|false</info>  他の socket_addrinfo 関数で使える <class>AddressInfo</class> クラスのインスタンスの配列を返します。
               失敗した場合、<info>false</info> を返します。

<comment>See Also:</comment>
   * <strong>socket_addrinfo_bind()</strong>
   * <strong>socket_addrinfo_connect()</strong>
   * <strong>socket_addrinfo_explain()</strong>


id: socket_atmark
type: function
doc:
<comment>Description:</comment>
  ソケットに帯域外マークが付けられているかを調べる
  
  <strong>$socket</strong> に帯域外マークが付けられているかを調べます。

<comment>Param:</comment>
  <info>Socket</info>  <strong>$socket</strong>  <strong>socket_create()</strong> で作成した <class>Socket</class> のインスタンス。

<comment>Return:</comment>
  <info>bool</info>  成功した場合に <info>true</info> を、失敗した場合に <info>false</info> を返します。

<comment>See Also:</comment>
   * <strong>socket_connect()</strong>
   * <strong>socket_create()</strong>


id: socket_bind
type: function
doc:
<comment>Description:</comment>
  ソケットに名前をバインドする
  
  <strong>$address</strong> で指定した名前を <strong>$socket</strong> で指定したソケットにバインドします。 これは、<strong>socket_connect()</strong> あ
  るいは <strong>socket_listen()</strong> を使用して接続が確立される前に行われます。

<comment>Param:</comment>
  <info>Socket</info>  <strong>$socket</strong>   <strong>socket_create()</strong> で作成した <class>Socket</class> クラスのインスタンス。
  <info>string</info>  <strong>$address</strong>  ソケットの種類が <info>AF_INET</info> の場合、 <strong>$address</strong> はドットで 4 つに区切られた表記 （例:
                    <return>127.0.0.1</return>）の IP アドレス。
                    
                    ソケットの種類が <info>AF_UNIX</info> の場合、 <strong>$address</strong> は Unix ドメインソケット （例:
                    /tmp/my.sock）。
  <info>int</info>     <strong>$port</strong>     パラメータ <strong>$port</strong> は <info>AF_INET</info> ソケットにバインドする場合にのみ使用され、 接続する
                    リモートホストのポートを指定します。

<comment>Return:</comment>
  <info>bool</info>  成功した場合に <info>true</info> を、失敗した場合に <info>false</info> を返します。
        
        エラーコードは <strong>socket_last_error()</strong> により取得できます。 このコードを <strong>socket_strerror()</strong> に渡
        すことにより、 エラー内容を表すテキストを得ることができます。

<comment>See Also:</comment>
   * <strong>socket_connect()</strong>
   * <strong>socket_listen()</strong>
   * <strong>socket_create()</strong>
   * <strong>socket_last_error()</strong>
   * <strong>socket_strerror()</strong>


id: socket_clear_error
type: function
doc:
<comment>Description:</comment>
  ソケットのエラーまたは直近のエラーコードをクリアする
  
  この関数は、指定したソケットまたは直近のグローバルなソケットエラー のエラーコードをクリアします。
  
  この関数により、 ソケットまたは直近のグローバルな拡張エラーコードとなる エラーコードの値を明示的に
  リセットすることが可能になります。 これは、エラーが発生したかどうかをアプリケーション内で検出する
  際に有用です。

<comment>Param:</comment>
  <info>Socket|null</info>  <strong>$socket</strong>  <strong>socket_create()</strong> で作成した <class>Socket</class> クラスのインスタンス。

<comment>Return:</comment>
  <info>void</info>  値を返しません。

<comment>See Also:</comment>
   * <strong>socket_last_error()</strong>
   * <strong>socket_strerror()</strong>


id: socket_close
type: function
doc:
<comment>Description:</comment>
  Socket クラスのインスタンスを閉じる
  
  <strong>socket_close()</strong> は、 <strong>$socket</strong> で指定した <class>Socket</class> クラスのインスタンスを閉じます。

<comment>Param:</comment>
  <info>Socket</info>  <strong>$socket</strong>  <strong>socket_create()</strong> あるいは <strong>socket_accept()</strong> で作成した <class>Socket</class> クラスのインスタンス。

<comment>Return:</comment>
  <info>void</info>  値を返しません。

<comment>See Also:</comment>
   * <strong>socket_bind()</strong>
   * <strong>socket_listen()</strong>
   * <strong>socket_create()</strong>
   * <strong>socket_strerror()</strong>


id: socket_cmsg_space
type: function
doc:
<comment>Description:</comment>
  メッセージバッファサイズを計算する
  
  付随データを受信するために確保するバッファのサイズを計算します。
  
  この関数は、
  現在のところ詳細な情報はありません。引数のリストのみが
  記述されています。

<comment>Param:</comment>
  <info>int</info>  <strong>$level</strong>  
  <info>int</info>  <strong>$type</strong>   

<comment>Return:</comment>
  <info>int|null</info>  

<comment>See Also:</comment>
   * <strong>socket_recvmsg()</strong>
   * <strong>socket_sendmsg()</strong>


id: socket_connect
type: function
doc:
<comment>Description:</comment>
  ソケット上の接続を初期化する
  
  <class>Socket</class> クラスのインスタンスを用いて、 <strong>$address</strong> への接続を初期化します。 このインスタンスは、
  <strong>socket_create()</strong> で作成した有効な <class>Socket</class> クラスのインスタンスである必要があります。

<comment>Param:</comment>
  <info>Socket</info>    <strong>$socket</strong>   <strong>socket_create()</strong> 関数で生成した <class>Socket</class> クラスのインスタンス。
  <info>string</info>    <strong>$address</strong>  パラメータ <strong>$address</strong> には、 <strong>$socket</strong> の種類が <info>AF_INET</info> の場合はドット区切り表記の
                      IPv4 アドレス (例: <return>127.0.0.1</return>)、 IPv6 サポートが有効で <strong>$socket</strong> の種類が
                      <info>AF_INET6</info> の場合は IPv6 アドレス (例: <return>::1</return>)、 <info>AF_UNIX</info> の場合は Unix ドメインソ
                      ケットのパス名を指定します。
  <info>int|null</info>  <strong>$port</strong>     パラメータ <strong>$port</strong> は <info>AF_INET</info> ソケット あるいは <info>AF_INET6</info> に接続する場合にのみ必
                      須となり、 接続するリモートホストのポートを指定します。

<comment>Return:</comment>
  <info>bool</info>  成功した場合に <info>true</info> を、失敗した場合に <info>false</info> を返します。 エラーコードは、
        <strong>socket_last_error()</strong> により取得できます。 このコードを <strong>socket_strerror()</strong> に渡すことにより、
        エラー内容を表すテキストを得ることができます。
        
        ソケットが非ブロッキングモードの場合、この関数は <info>false</info> を返し、エラー <return>Operation now in
        progress</return> を発生させます。

<comment>See Also:</comment>
   * <strong>socket_bind()</strong>
   * <strong>socket_listen()</strong>
   * <strong>socket_create()</strong>
   * <strong>socket_last_error()</strong>
   * <strong>socket_strerror()</strong>


id: socket_create
type: function
doc:
<comment>Description:</comment>
  ソケット（通信時の終端）を作成する
  
  通信のエンドポイント(終端)と呼ばれることもある <class>Socket</class> クラスのインスタンスを作成し、 返します。典
  型的なネットワーク接続は、2つのソケットから成り立ちます。 このとき、片方はクライアント、もう片方は
  サーバーの役割をします。

<comment>Param:</comment>
  <info>int</info>  <strong>$domain</strong>    パラメータ <strong>$domain</strong> には、 ソケットが利用するプロトコルファミリーを指定します。
  <info>int</info>  <strong>$type</strong>      <strong>$type</strong> パラメータは、 ソケットが利用する通信方式を指定します。
  <info>int</info>  <strong>$protocol</strong>  <strong>$protocol</strong> は、ソケット上の通信で使われる <strong>$domain</strong> で指定されたファミリーに属するプ
                  ロトコルを指定します。 正しい値は、<strong>getprotobyname()</strong> を使うことで取得できます。利用
                  したいプロトコルが、TCP または UDP の場合は、定数 <info>SOL_TCP</info> と <info>SOL_UDP</info> を指定するこ
                  ともできます。

<comment>Return:</comment>
  <info>Socket|false</info>  <strong>socket_create()</strong> は、 成功時に <class>Socket</class> クラスのインスタンス、 失敗時に <info>false</info> を返しま
                す。 実際のエラーコードは、<strong>socket_last_error()</strong> を コールすることにより取得できます。
                このエラーコードをさらに <strong>socket_strerror()</strong>に渡すことにより、 エラーの内容を文字列で
                取得することが可能です。

<comment>See Also:</comment>
   * <strong>socket_accept()</strong>
   * <strong>socket_bind()</strong>
   * <strong>socket_connect()</strong>
   * <strong>socket_listen()</strong>
   * <strong>socket_last_error()</strong>
   * <strong>socket_strerror()</strong>


id: socket_create_listen
type: function
doc:
<comment>Description:</comment>
  接続を受けつけるためにポートにソケットをオープンする
  
  <strong>socket_create_listen()</strong> は、 <info>AF_INET</info> 型で すべての ローカルインターフェイスの指定したポート上で新規
  接続を待ち受ける 新しい <class>Socket</class> クラスのインスタンスを作成します。
  
  この関数は、新規接続のみを受け入れるソケットを作成しやすくするためのものです。

<comment>Param:</comment>
  <info>int</info>  <strong>$port</strong>     すべてのインターフェイスで待ち受けるポート。
  <info>int</info>  <strong>$backlog</strong>  <strong>$backlog</strong> パラメータは、 接続の順番待ちのキューをどれだけの長さまで保持するかを定義
                 します。 <info>SOMAXCONN</info> を <strong>$backlog</strong> パラメータに渡します。詳細な情報は <strong>socket_listen()</strong>
                 を参照ください。

<comment>Return:</comment>
  <info>Socket|false</info>  <strong>socket_create_listen()</strong> は、 成功した場合に新しい <class>Socket</class> クラスのインスタンスを、 エ
                ラー時に <info>false</info> を返します。エラーコードは <strong>socket_last_error()</strong> で取得可能です。この
                コードを <strong>socket_strerror()</strong> に渡すと、エラーの詳細が文字列で取得可能です。

<comment>See Also:</comment>
   * <strong>socket_create()</strong>
   * <strong>socket_create_pair()</strong>
   * <strong>socket_bind()</strong>
   * <strong>socket_listen()</strong>
   * <strong>socket_last_error()</strong>
   * <strong>socket_strerror()</strong>


id: socket_create_pair
type: function
doc:
<comment>Description:</comment>
  区別できないソケットの組を作成し、配列に保存する
  
  <strong>socket_create_pair()</strong> は、接続されており区別できない 2 つのソケットを作成し、それを <strong>$pair</strong> に保存し
  ます。 この関数は、一般に IPC（InterProcess Communication: プロセス間通信） で使用します。

<comment>Param:</comment>
  <info>int</info>    <strong>$domain</strong>    <strong>$domain</strong> は、ソケットで使用するプロトコルの種類を指定します。 完全な一覧は
                    <strong>socket_create()</strong> を参照ください。
  <info>int</info>    <strong>$type</strong>      <strong>$type</strong> では、ソケットが使用する通信の形式を選択します。 完全な一覧は
                    <strong>socket_create()</strong> を参照ください。
  <info>int</info>    <strong>$protocol</strong>  <strong>$protocol</strong> は、指定した <strong>$domain</strong> の中の特定のプロトコルを指定します。これは、返さ
                    れるソケットとの通信に使用されます。 使用可能な値の名前は <strong>getprotobyname()</strong> で取
                    得可能です。もし要求されるプロトコルが TCP あるいは UDP の場合、 対応する定数
                    <info>SOL_TCP</info> および <info>SOL_UDP</info> も使用可能です。
                    
                    サポートするプロトコルの完全な一覧は <strong>socket_create()</strong> を参照ください。
  <info>array</info>  <strong>$pair</strong>      2 つの <class>Socket</class> クラスのインスタンスが格納される配列への参照。

<comment>Return:</comment>
  <info>bool</info>  成功した場合に <info>true</info> を、失敗した場合に <info>false</info> を返します。

<comment>See Also:</comment>
   * <strong>socket_create()</strong>
   * <strong>socket_create_listen()</strong>
   * <strong>socket_bind()</strong>
   * <strong>socket_listen()</strong>
   * <strong>socket_last_error()</strong>
   * <strong>socket_strerror()</strong>


id: socket_export_stream
type: function
doc:
<comment>Description:</comment>
  ソケットをカプセル化したストリームに、ソケットをエクスポートする
  
  この関数は、
  現在のところ詳細な情報はありません。引数のリストのみが
  記述されています。

<comment>Param:</comment>
  <info>Socket</info>  <strong>$socket</strong>  

<comment>Return:</comment>
  <info>resource|false</info>  リソースを返します。失敗した場合に <info>false</info> を返します.


id: socket_get_option
type: function
doc:
<comment>Description:</comment>
  ソケットのオプションを取得する
  
  <strong>socket_get_option()</strong> 関数は、ソケット <strong>$socket</strong> のオプション <strong>$option</strong> の値を取得します。
  <strong>socket_get_option()</strong> は、失敗した場合に <info>false</info> を返します。

<comment>Param:</comment>
  <info>Socket</info>  <strong>$socket</strong>  <strong>socket_create()</strong> あるいは <strong>socket_accept()</strong> で作成した <class>Socket</class> クラスのインスタンス。
  <info>int</info>     <strong>$level</strong>   <strong>$level</strong> パラメータは、オプションのプロトコルレベルを指定します。 例えば、オプショ
                   ンをソケットレベルで取得するには <strong>$level</strong> パラメータに <info>SOL_SOCKET</info> を指定します。
                   <info>TCP</info> のようなそれ以外のレベルの場合、そのレベルのプロトコル番号を指定します。 プロ
                   トコル番号は <strong>getprotobyname()</strong> 関数を使用して取得可能です。
  <info>int</info>     <strong>$option</strong>  データがまだ残っているうちに <strong>socket_close()</strong> をコールした場合に、<strong>$socket</strong> を残存さ
                   せるかどうかを報告します。 デフォルトでは、ソケットが閉じられる際には未送信のデー
                   タをすべて送信しようとします。 接続ベースのソケットでは、 <strong>socket_close()</strong> は接続先
                   がデータを認識するまで閉じるのを待ちます。
                   
                   l_onoff が非ゼロで l_linger がゼロの場合は、 その時点で未送信のデータはすべて破棄
                   されます。 接続ベースのソケットの場合、接続先には RST (リセット) を送信します。
                   
                   一方 l_onoff が非ゼロで l_linger も非ゼロの場合は、 <strong>socket_close()</strong> は 全データを
                   送信し終えるか l_linger で指定した時間が経過するまで処理をブロックします。 ソケッ
                   トが非ブロックモードの場合は、 <strong>socket_close()</strong> は失敗してエラーを返します。

<comment>Return:</comment>
  <info>array|int|false</info>  指定したオプションの値を返します。 失敗した場合に <info>false</info> を返します

<comment>See Also:</comment>
   * <strong>socket_create_listen()</strong>
   * <strong>socket_set_option()</strong>


id: socket_get_status
type: function
doc:
<comment>Description:</comment>
  stream_get_meta_data のエイリアス
  
  この関数は次の関数のエイリアスです。 <strong>stream_get_meta_data()</strong>.


id: socket_getopt
type: function
doc:
<comment>Description:</comment>
  socket_get_option のエイリアス
  
  この関数は次の関数のエイリアスです。 <strong>socket_get_option()</strong>


id: socket_getpeername
type: function
doc:
<comment>Description:</comment>
  指定したソケットのリモート側に問い合わせ、その型に応じてホスト/ポート、あるいは Unix ファイルシス
  テ
  ムのパスを返す
  
  指定したソケットのリモート側に問い合わせ、 その型に応じてホスト/ポート、あるいは Unix ファイルシス
  テムのパスを返します。

<comment>Param:</comment>
  <info>Socket</info>  <strong>$socket</strong>   <strong>socket_create()</strong> あるいは <strong>socket_accept()</strong> で作成した <class>Socket</class> クラスのインスタン
                    ス。
  <info>string</info>  <strong>$address</strong>  指定されたソケットの型が <info>AF_INET</info> あるいは <info>AF_INET6</info> であった場合、
                    <strong>socket_getpeername()</strong> はピア（リモート）の IP アドレス を適切な書式（例:
                    <return>127.0.0.1</return> あるいは <return>fe80::1</return>）に したものを <strong>$address</strong> パラメータに、そしてもし オプ
                    ションの <strong>$port</strong> パラメータが指定されていれば そこにポートを格納します。
                    
                    指定されたソケットの型が <info>AF_UNIX</info> であった場合、 <strong>socket_getpeername()</strong> は Unix
                    ファイルシステムの パス（例: <return>/var/run/daemon.sock</return>）を <strong>$address</strong> パラメータに格納
                    します。
  <info>int</info>     <strong>$port</strong>     指定した場合は、 <strong>$address</strong> に関連付けるポートを保持します。

<comment>Return:</comment>
  <info>bool</info>  成功した場合に <info>true</info> を、失敗した場合に <info>false</info> を返します。 <strong>socket_getpeername()</strong> は、 ソケット
        の型が <info>AF_INET</info>、 <info>AF_INET6</info> あるいは <info>AF_UNIX</info> のいずれでもない場合にも <info>false</info> を返します。この場
        合には、 直近のソケットエラーコードは更新されません。

<comment>See Also:</comment>
   * <strong>socket_getsockname()</strong>
   * <strong>socket_last_error()</strong>
   * <strong>socket_strerror()</strong>


id: socket_getsockname
type: function
doc:
<comment>Description:</comment>
  指定したソケットのローカル側に問い合わせ、その型に応じてホスト/ポート、あるいは Unix ファイルシス
  テ
  ムのパスを返す
  
  <strong>socket_getsockname()</strong> は、 <strong>socket_accept()</strong> で作成した <info>AF_UNIX</info> ソケットとともに使用することはできま
  せん。意味のある値が返されるのは、 <strong>socket_accept()</strong> で作成したソケットか <strong>socket_bind()</strong> に続くプライ
  マリサーバーソケットのみです。

<comment>Param:</comment>
  <info>Socket</info>  <strong>$socket</strong>   <strong>socket_create()</strong> あるいは <strong>socket_accept()</strong> で作成した <class>Socket</class> クラスのインスタン
                    ス。
  <info>string</info>  <strong>$address</strong>  指定されたソケットの型が <info>AF_INET</info> あるいは <info>AF_INET6</info> であった場合、
                    <strong>socket_getsockname()</strong> はローカルの IP アドレス を適切な書式（例: <return>127.0.0.1</return> あるい
                    は <return>fe80::1</return>）に したものを <strong>$address</strong> パラメータに、そしてもし オプションの <strong>$port</strong>
                    パラメータが指定されていれば そこにポートを格納します。
                    
                    指定されたソケットの型が <info>AF_UNIX</info> であった場合、 <strong>socket_getpeername()</strong> は Unix
                    ファイルシステムのパス （例: <return>/var/run/daemon.sock</return>）を <strong>$address</strong> パラメータに格納
                    します。
  <info>int</info>     <strong>$port</strong>     指定した場合は、関連付けるポートを保持します。

<comment>Return:</comment>
  <info>bool</info>  成功した場合に <info>true</info> を、失敗した場合に <info>false</info> を返します。 <strong>socket_getsockname()</strong> は、 ソケット
        の型が <info>AF_INET</info>、 <info>AF_INET6</info> あるいは <info>AF_UNIX</info> のいずれでもない場合にも <info>false</info> を返します。この場
        合には、 直近のソケットエラーコードは更新されません。

<comment>See Also:</comment>
   * <strong>socket_getpeername()</strong>
   * <strong>socket_last_error()</strong>
   * <strong>socket_strerror()</strong>


id: socket_import_stream
type: function
doc:
<comment>Description:</comment>
  ストリームをインポートする
  
  ストリームをインポートし、ソケットをソケットリソースにカプセル化します。

<comment>Param:</comment>
  <info>resource</info>  <strong>$stream</strong>  インポートするストリームリソース。

<comment>Return:</comment>
  <info>Socket|false</info>  失敗した場合は <info>false</info> を返します。

<comment>See Also:</comment>
   * <strong>stream_socket_server()</strong>


id: socket_last_error
type: function
doc:
<comment>Description:</comment>
  ソケットの直近のエラーを返す
  
  <class>Socket</class> クラスのインスタンスをこの関数に渡すと、この特定のソケットに発生した 直近のエラーが返されま
  す。<strong>$socket</strong> が <info>null</info> の場合、 直近にエラーを発生したソケット関数のエラーコードが返されます。 後者
  は、失敗した場合にソケットを返さない <strong>socket_create()</strong> のような関数や 特定のソケットに直接関係ない理
  由で失敗する可能性がある <strong>socket_select()</strong> で特に有用です。 このエラーコードは、指定したエラーコード
  を表す文字列を得るために <strong>socket_strerror()</strong> に渡すものとしても適しています。
  
  エラーが発生していない場合や <strong>socket_clear_error()</strong> でクリアされた後である場合は、 この関数は <return>0</return> を返
  します。

<comment>Param:</comment>
  <info>Socket|null</info>  <strong>$socket</strong>  <strong>socket_create()</strong> で作成した <class>Socket</class> クラスのインスタンス。

<comment>Return:</comment>
  <info>int</info>  この関数は、ソケットのエラーコードを返します。


id: socket_listen
type: function
doc:
<comment>Description:</comment>
  ソケット上で接続待ち(listen)する
  
  ソケット <strong>$socket</strong> が <strong>socket_create()</strong> を用いて作成され、 <strong>socket_bind()</strong> で名前が付けられた後、
  <strong>$socket</strong> 上の接続要求を待つための通信ができるようになります。
  
  <strong>socket_listen()</strong> は、ソケットが <return>SOCK_STREAM</return> 型または <return>SOCK_SEQPACKET</return> 型の場合のみ利用可能です。

<comment>Param:</comment>
  <info>Socket</info>  <strong>$socket</strong>   <strong>socket_create()</strong> または <strong>socket_addrinfo_bind()</strong> で作成した 有効な <class>Socket</class> クラスの
                    インスタンス。
  <info>int</info>     <strong>$backlog</strong>  最大 <strong>$backlog</strong> 個の接続を処理用の キューで待ち受けることが可能です。もし待ちうけ
                    用のキューが いっぱいになった場合、クライアントでは <return>ECONNREFUSED</return> の通知とともに
                    エラーが発生します。あるいは、もし基盤となるプロトコルが リクエストの再送をサ
                    ポートしている場合、再試行が成功するまで リクエストは無視されます。
                    
                    <strong>$backlog</strong> パラメータに指定できる値の最大値は プラットフォームに大きく依存します。
                    Linux では、最大値は <info>SOMAXCONN</info> に切り詰められます。win32 では、 もし <info>SOMAXCONN</info>
                    を渡した場合、backlog の 最大値を適切な値に設定する責任はサービスの 提供側が負い
                    ます。 このプラットフォームでは、実際の backlog の値を見つける標準的な 手段が提
                    供されていません。

<comment>Return:</comment>
  <info>bool</info>  成功した場合に <info>true</info> を、失敗した場合に <info>false</info> を返します。 エラーコードは <strong>socket_last_error()</strong>
        で取得可能で、このコードを <strong>socket_strerror()</strong> に指定することにより エラーの内容を文字列として
        取得可能です。

<comment>See Also:</comment>
   * <strong>socket_accept()</strong>
   * <strong>socket_bind()</strong>
   * <strong>socket_connect()</strong>
   * <strong>socket_create()</strong>
   * <strong>socket_strerror()</strong>
   * <strong>socket_addrinfo_bind()</strong>


id: socket_read
type: function
doc:
<comment>Description:</comment>
  ソケットから最大バイト長まで読みこむ
  
  関数 <strong>socket_read()</strong> は、関数 <strong>socket_create()</strong> または <strong>socket_accept()</strong> により作成された <class>Socket</class> クラス
  のインスタンス <strong>$socket</strong> から読み込みます。

<comment>Param:</comment>
  <info>Socket</info>  <strong>$socket</strong>  <strong>socket_create()</strong> あるいは <strong>socket_accept()</strong> で作成した <class>Socket</class> クラスのインスタンス。
  <info>int</info>     <strong>$length</strong>  読み込まれる最大バイト長は、<strong>$length</strong> パラメータで 指定します。 読み込みを終了する
                   ために <info>\r</info>、<info>\n</info>、 <info>\0</info> を使用することが可能です (これは、以下に示す <strong>$mode</strong> に依存しま
                   す)。
  <info>int</info>     <strong>$mode</strong>    オプションのパラメータ <strong>$mode</strong> は、名前のある定数です。 <info>PHP_BINARY_READ</info> (デフォル
                   ト) - システムの <return>recv()</return> 関数を 使用します。バイナリデータ読み込みに関して安全で
                   す。 <info>PHP_NORMAL_READ</info> - 読み込みは、<return>\n</return> あるいは <return>\r</return> で中断されます。
                   
                   <info>PHP_BINARY_READ</info> (デフォルト) - システムの <return>recv()</return> 関数を 使用します。バイナリデー
                   タ読み込みに関して安全です。
                   
                   <info>PHP_NORMAL_READ</info> - 読み込みは、<return>\n</return> あるいは <return>\r</return> で中断されます。

<comment>Return:</comment>
  <info>string|false</info>  <strong>socket_read()</strong> は、成功時に文字列としてデータを返し、 エラー時 (リモートホストが接続
                をクローズした場合を含みます) に <info>false</info> を返します。 エラーコードは
                <strong>socket_last_error()</strong> で取得可能であり、 このコードは、エラー文字列を取得するために
                <strong>socket_strerror()</strong> に渡すことができます。
                
                <strong>socket_read()</strong> は、読み込むデータがもう存在しない 場合に長さゼロの文字列("")を返しま
                す。

<comment>See Also:</comment>
   * <strong>socket_accept()</strong>
   * <strong>socket_bind()</strong>
   * <strong>socket_connect()</strong>
   * <strong>socket_listen()</strong>
   * <strong>socket_last_error()</strong>
   * <strong>socket_strerror()</strong>
   * <strong>socket_write()</strong>


id: socket_recv
type: function
doc:
<comment>Description:</comment>
  接続したソケットからデータを受信する
  
  <strong>socket_recv()</strong> 関数は、 <strong>$socket</strong> から <strong>$length</strong> バイトのデータを受信して <strong>$data</strong> に格納します。
  <strong>socket_recv()</strong> を使うと、 接続したソケットからデータを収集することができます。 さらに、フラグを指定
  して関数の挙動を変更することもできます。
  
  <strong>$data</strong> は参照渡しなので、 引数リストには変数で渡さなければなりません。 <strong>$socket</strong> から <strong>socket_recv()</strong>
  で読み込んだデータが <strong>$data</strong> に入ります。

<comment>Param:</comment>
  <info>Socket</info>       <strong>$socket</strong>  <strong>$socket</strong> は、事前に socket_create() で作成した <class>Socket</class> クラスのインスタンスで
                        なければなりません。
  <info>string|null</info>  <strong>$data</strong>    受信したデータが、 <strong>$data</strong> で指定した変数に格納されます。 エラーが発生したり接
                        続がリセットされたりデータが存在しなかったりした場合は、 <strong>$data</strong> には <info>null</info> が
                        設定されます。
  <info>int</info>          <strong>$length</strong>  最大 <strong>$length</strong> バイトまでをリモートホストから取得します。
  <info>int</info>          <strong>$flags</strong>   <strong>$flags</strong> の値は、次のフラグを論理 OR (<return>|</return>) 演算子で組み合わせたものとなります。

<comment>Return:</comment>
  <info>int|false</info>  <strong>socket_recv()</strong> は、受信したバイト数を返します。 エラーが発生した場合は <info>false</info> を返しま
             す。 実際のエラーコードを取得するには <strong>socket_last_error()</strong> をコールします。 このエラー
             コードを <strong>socket_strerror()</strong> に渡すと、エラーに関する説明テキストを取得することができま
             す。


id: socket_recvfrom
type: function
doc:
<comment>Description:</comment>
  接続しているかどうかによらず、ソケットからデータを受信する
  
  <strong>socket_recvfrom()</strong> 関数は、 ポート <strong>$port</strong> (<info>AF_UNIX</info> 型のソケットである場合を除く) 上の <strong>$address</strong> から
  受信した <strong>$length</strong> バイトのデータを <strong>$data</strong> に格納します。 <strong>socket_recvfrom()</strong> は、 接続済みのソケットだ
  けでなく接続していないソケットに対しても使用可能です。 さらに、フラグを指定することでこの関数の挙
  動を設定できます。
  
  <strong>$address</strong> と <strong>$port</strong> は参照渡しとしなければなりません。接続していないソケットの場合は、 <strong>$address</strong> はリ
  モートホストの IP アドレスか UNIX ソケットへのパスとなります。接続済みのソケットの場合は、
  <strong>$address</strong> は <info>null</info> とします。 また、<info>AF_INET</info> あるいは <info>AF_INET6</info> 形式のまだ接続していないソケットの場
  合、 <strong>$port</strong> にはリモートホストのポート番号を指定します。
  
  この関数はバイナリデータに対応しています。

<comment>Param:</comment>
  <info>Socket</info>  <strong>$socket</strong>   <strong>$socket</strong> には、 socket_create() で作成した <class>Socket</class> クラスのインスタンスを指定しま
                    す。
  <info>string</info>  <strong>$data</strong>     受信したデータが <strong>$data</strong> に格納されます。
  <info>int</info>     <strong>$length</strong>   最大 <strong>$length</strong> バイトまでのデータをリモートホストから取得します。
  <info>int</info>     <strong>$flags</strong>    <strong>$flags</strong> の値は、以下のフラグの任意の組み合わせを 論理 OR 演算子 (<return>|</return>) で連結したも
                    のとなります。
  <info>string</info>  <strong>$address</strong>  <info>AF_UNIX</info> 型のソケットの場合は、 <strong>$address</strong> はファイルへのパスとなります。 それ以外
                    の場合は、未接続のソケットの場合には <strong>$address</strong> はリモートホストの IP アドレスとな
                    ります。 接続済みソケットの場合は <info>null</info> となります。
  <info>int</info>     <strong>$port</strong>     この引数は <info>AF_INET</info> 型あるいは <info>AF_INET6</info> 型のソケットに対してのみ適用され、 データ
                    を受信するリモートホストのポートを指定します。 接続済みソケットの場合は <strong>$port</strong> は
                    <info>null</info> となります。

<comment>Return:</comment>
  <info>int|false</info>  <strong>socket_recvfrom()</strong> は、受信したバイト数を返します。 あるいはエラー時には <info>false</info> を返しま
             す。 エラーコードを取得するには <strong>socket_last_error()</strong> をコールします。取得したエラーコー
             ドを <strong>socket_strerror()</strong> に渡すと、 そのエラーについての説明を得ることができます。

<comment>See Also:</comment>
   * <strong>socket_recv()</strong>
   * <strong>socket_send()</strong>
   * <strong>socket_sendto()</strong>
   * <strong>socket_create()</strong>


id: socket_recvmsg
type: function
doc:
<comment>Description:</comment>
  メッセージを読む
  
  この関数は、
  現在のところ詳細な情報はありません。引数のリストのみが
  記述されています。

<comment>Param:</comment>
  <info>Socket</info>  <strong>$socket</strong>   
  <info>array</info>   <strong>$message</strong>  
  <info>int</info>     <strong>$flags</strong>    

<comment>Return:</comment>
  <info>int|false</info>  

<comment>See Also:</comment>
   * <strong>socket_sendmsg()</strong>
   * <strong>socket_cmsg_space()</strong>


id: socket_select
type: function
doc:
<comment>Description:</comment>
  与えられたソケットの配列に対し、指定した有効時間で select() システムコールを実行する
  
  <strong>socket_select()</strong> はソケットの配列を受け取り、 それらの状態が変化するまで待ちます。BSD のソケットに
  ついての知識がある方なら、 これらのソケットの配列が、いわゆるファイル記述子セットであることがご理
  解いただけるでしょう。 3 つの独立した配列でソケットを監視します。

<comment>Param:</comment>
  <info>array|null</info>  <strong>$read</strong>          配列 <strong>$read</strong> に挙げられたソケットでは、 文字が読み込み可能になっているか
                             どうか（厳密に言うと、読み込みが ブロックされていないかどうか - 実際に
                             は、ソケット記述子はファイルの 終端でも有効です。そのような場合、
                             <strong>socket_read()</strong> は長さゼロの文字列を返します）を監視します。
  <info>array|null</info>  <strong>$write</strong>         配列 <strong>$write</strong> に挙げられたソケットでは、 書き込みがブロックされていないか
                             どうかを監視します。
  <info>array|null</info>  <strong>$except</strong>        配列 <strong>$except</strong> に挙げられたソケットでは、 例外を監視します。
  <info>int|null</info>    <strong>$seconds</strong>       <strong>$seconds</strong> および <strong>$microseconds</strong> は、ともに<return>タイムアウト</return>を指定するパラメー
                             タです。 <return>タイムアウト</return>は、<strong>socket_select()</strong> が結果を返すまでの経過時間の最
                             大値です。 <strong>$seconds</strong> はゼロにすることも可能で、そうすると
                             <strong>socket_select()</strong> は結果をすぐに返します。 これはポーリングをする際に有用
                             です。<strong>$seconds</strong> に <info>null</info>（タイムアウトしない）を指定すると、
                             <strong>socket_select()</strong> は無期限にブロックします。
  <info>int</info>         <strong>$microseconds</strong>  

<comment>Return:</comment>
  <info>int|false</info>  成功した場合は、<strong>socket_select()</strong> は配列内で 変化のあったソケットの数を返します。もし何か
             がおこる前に タイムアウト時間が経過した場合は、ゼロを返すことになります。 エラー時には
             <info>false</info> が返されます。エラーコードは <strong>socket_last_error()</strong> で取得可能です。
             
             エラーかどうかを調べる際には、必ず <return>===</return> 演算子を 使用するようにしましょう。
             <strong>socket_select()</strong> は 0 を返す場合もあり、このような場合に <return>==</return> を用いて比較すると、エラーと
             判定されてしまいます。 <strong>socket_select()</strong> の返す結果を知る
             ]]>

<comment>See Also:</comment>
   * <strong>socket_read()</strong>
   * <strong>socket_write()</strong>
   * <strong>socket_last_error()</strong>
   * <strong>socket_strerror()</strong>


id: socket_send
type: function
doc:
<comment>Description:</comment>
  接続したソケットにデータを送信する
  
  関数 <strong>socket_send()</strong> は、 <strong>$data</strong> からソケット <strong>$socket</strong> に <strong>$length</strong> バイトのデータを送信します。

<comment>Param:</comment>
  <info>Socket</info>  <strong>$socket</strong>  <strong>socket_create()</strong> あるいは <strong>socket_accept()</strong> が作成した有効な <class>Socket</class> クラスのインスタ
                   ンス。
  <info>string</info>  <strong>$data</strong>    リモートホストに送信するデータを含むバッファ。
  <info>int</info>     <strong>$length</strong>  <strong>$data</strong> からリモートホストに送信するバイト数。
  <info>int</info>     <strong>$flags</strong>   <strong>$flags</strong> の値は、以下のフラグの任意の組み合わせを 論理 OR 演算子 (<return>|</return>) で連結したもの
                   となります。 <strong>$flags</strong> がとりうる値<info>MSG_OOB</info> OOB（out-of-band: 帯域外）データを送信し
                   ます。 <info>MSG_EOR</info> レコードにマークをつけます。 レコードでデータがそろいます。
                   <info>MSG_EOF</info> ソケットの送信側を閉じ、そのことを知らせる通知を送信データの最後に付加し
                   ます。 トランザクションでデータがそろいます。 <info>MSG_DONTROUTE</info> ルータを使用せず、直
                   接つながっているインターフェイスのみを使用します。

<comment>Return:</comment>
  <info>int|false</info>  <strong>socket_send()</strong> は、送信したバイト数あるいはエラー時に <info>false</info> を返します。

<comment>See Also:</comment>
   * <strong>socket_sendto()</strong>


id: socket_sendmsg
type: function
doc:
<comment>Description:</comment>
  メッセージを送信する
  
  この関数は、
  現在のところ詳細な情報はありません。引数のリストのみが
  記述されています。

<comment>Param:</comment>
  <info>Socket</info>  <strong>$socket</strong>   
  <info>array</info>   <strong>$message</strong>  
  <info>int</info>     <strong>$flags</strong>    

<comment>Return:</comment>
  <info>int|false</info>  送信したバイト数を返します。失敗した場合に <info>false</info> を返します。

<comment>See Also:</comment>
   * <strong>socket_recvmsg()</strong>
   * <strong>socket_cmsg_space()</strong>


id: socket_sendto
type: function
doc:
<comment>Description:</comment>
  接続しているかどうかによらずソケットにメッセージを送信する
  
  関数 <strong>socket_sendto()</strong> は、 アドレス <strong>$addr</strong> の <strong>$port</strong> を使用し、 <strong>$data</strong> からソケット <strong>$socket</strong> に <strong>$length</strong>
  バイトのデータを送信します。

<comment>Param:</comment>
  <info>Socket</info>    <strong>$socket</strong>   <strong>socket_create()</strong> で作成した <class>Socket</class> クラスのインスタンス。
  <info>string</info>    <strong>$data</strong>     送信するデータが、<strong>$data</strong> から取り出されます。
  <info>int</info>       <strong>$length</strong>   <strong>$data</strong> から <strong>$length</strong> バイト分のデータが送信されます。
  <info>int</info>       <strong>$flags</strong>    <strong>$flags</strong> の値は、以下のフラグの任意の組み合わせを 論理 OR 演算子 (<return>|</return>) で連結した
                      ものとなります。 <strong>$flags</strong> がとりうる値<info>MSG_OOB</info> OOB（out-of-band: 帯域外）データを
                      送信します。 <info>MSG_EOR</info> レコードにマークをつけます。 レコードでデータがそろいま
                      す。 <info>MSG_EOF</info> ソケットの送信側を閉じ、そのことを知らせる通知を送信データの最後
                      に付加します。 トランザクションでデータがそろいます。 <info>MSG_DONTROUTE</info> ルータを使
                      用せず、直接つながっているインターフェイスのみを使用します。
  <info>string</info>    <strong>$address</strong>  リモートホストの IP アドレス。
  <info>int|null</info>  <strong>$port</strong>     <strong>$port</strong> は、 データの送信先となるリモートホストのポート番号です。

<comment>Return:</comment>
  <info>int|false</info>  <strong>socket_sendto()</strong> は、リモートホストに送信したバイト数を返します。 エラーが発生した場合は
             <info>false</info> を返します。

<comment>See Also:</comment>
   * <strong>socket_send()</strong>


id: socket_set_block
type: function
doc:
<comment>Description:</comment>
  ソケットのブロッキングモードを設定する
  
  <strong>socket_set_block()</strong> 関数は、 <strong>$socket</strong> パラメータで指定したソケットから <info>O_NONBLOCK</info> フラグを取り除きま
  す。
  
  受信や送信、接続、待機といった操作をブロックモードのソケットに対して行うと、 その処理が完了するか
  何らかのシグナルを受信するまではスクリプトを停止します。

<comment>Param:</comment>
  <info>Socket</info>  <strong>$socket</strong>  <strong>socket_create()</strong> あるいは <strong>socket_accept()</strong> で作成した <class>Socket</class> クラスのインスタンス。

<comment>Return:</comment>
  <info>bool</info>  成功した場合に <info>true</info> を、失敗した場合に <info>false</info> を返します。

<comment>See Also:</comment>
   * <strong>socket_set_nonblock()</strong>
   * <strong>socket_set_option()</strong>


id: socket_set_blocking
type: function
doc:
<comment>Description:</comment>
  stream_set_blocking のエイリアス
  
  この関数は次の関数のエイリアスです。  <strong>stream_set_blocking()</strong>.


id: socket_set_nonblock
type: function
doc:
<comment>Description:</comment>
  ソケットリソースを非ブロックモードに設定する
  
  <strong>socket_set_nonblock()</strong> 関数は、 <strong>$socket</strong> パラメータで指定したソケットに <info>O_NONBLOCK</info> フラグを設定しま
  す。
  
  受信や送信、接続、待機といった操作を非ブロックモードのソケットに対して行うと、 その処理が完了する
  か何らかのシグナルを受信するまではスクリプトは停止しません。 また、その操作がブロックされると、呼
  び出し元の関数は失敗します。

<comment>Param:</comment>
  <info>Socket</info>  <strong>$socket</strong>  <strong>socket_create()</strong> あるいは <strong>socket_accept()</strong> で作成した <class>Socket</class> クラスのインスタンス。

<comment>Return:</comment>
  <info>bool</info>  成功した場合に <info>true</info> を、失敗した場合に <info>false</info> を返します。

<comment>See Also:</comment>
   * <strong>socket_set_block()</strong>
   * <strong>socket_set_option()</strong>
   * <strong>stream_set_blocking()</strong>


id: socket_set_option
type: function
doc:
<comment>Description:</comment>
  ソケットのオプションを設定する
  
  <strong>socket_set_option()</strong> 関数は、<strong>$level</strong> が指すプロトコルレベルでソケット <strong>$socket</strong> のオプション <strong>$option</strong>
  に値 <strong>$value</strong> を設定します。

<comment>Param:</comment>
  <info>Socket</info>            <strong>$socket</strong>  <strong>socket_create()</strong> あるいは <strong>socket_accept()</strong> で作成した <class>Socket</class> クラスのイン
                             スタンス。
  <info>int</info>               <strong>$level</strong>   <strong>$level</strong> パラメータは、オプションのプロトコルレベルを指定します。 例え
                             ば、オプションをソケットレベルで設定するには <strong>$level</strong> パラメータに
                             SOL_SOCKET を指定します。 TCP のようなそれ以外のレベルの場合、そのレベ
                             ルのプロトコル番号を指定します。 プロトコル番号は <strong>getprotobyname()</strong> 関数
                             を使用して取得可能です。
  <info>int</info>               <strong>$option</strong>  使用可能なソケットオプションは <strong>socket_get_option()</strong> 関数と同じです。
  <info>array|string|int</info>  <strong>$value</strong>   オプションの値。

<comment>Return:</comment>
  <info>bool</info>  成功した場合に <info>true</info> を、失敗した場合に <info>false</info> を返します。

<comment>See Also:</comment>
   * <strong>socket_create()</strong>
   * <strong>socket_bind()</strong>
   * <strong>socket_strerror()</strong>
   * <strong>socket_last_error()</strong>
   * <strong>socket_get_option()</strong>


id: socket_set_timeout
type: function
doc:
<comment>Description:</comment>
  stream_set_timeout のエイリアス
  
  この関数は次の関数のエイリアスです。 <strong>stream_set_timeout()</strong>.


id: socket_setopt
type: function
doc:
<comment>Description:</comment>
  socket_set_option のエイリアス
  
  この関数は次の関数のエイリアスです。 <strong>socket_set_option()</strong>


id: socket_shutdown
type: function
doc:
<comment>Description:</comment>
  受信、送信、または送受信用のソケットをシャットダウンする
  
  <strong>socket_shutdown()</strong> 関数は、<strong>$socket</strong> から送られてくる受信、送信あるいはすべて（デフォルト）のデータを
  停止します。
  
  関連するバッファの内容は、空になるかもしれないしならないかもしれません。

<comment>Param:</comment>
  <info>Socket</info>  <strong>$socket</strong>  <strong>socket_create()</strong> で作成した <class>Socket</class> クラスのインスタンス。
  <info>int</info>     <strong>$mode</strong>    <strong>$mode</strong> の値は以下のうちのひとつです。 <strong>$mode</strong> のとりうる値<return>0</return> ソケットの読み込みを停止
                   します。 <return>1</return> ソケットの書き込みを停止します。 <return>2</return> ソケットの読み込み・書き込みを停止
                   します。

<comment>Return:</comment>
  <info>bool</info>  成功した場合に <info>true</info> を、失敗した場合に <info>false</info> を返します。


id: socket_strerror
type: function
doc:
<comment>Description:</comment>
  ソケットエラーの内容を文字列として返す
  
  <strong>socket_strerror()</strong> は、パラメータ <strong>$error_code</strong> に <strong>socket_last_error()</strong> の返すソケットエラーコードを受
  け取り、 対応する内容を文字列で返します。
  
  socket 拡張モジュールが出すエラーメッセージは英語ですが、 この関数から取得したシステムメッセージは
  現在のロケール (<info>LC_MESSAGES</info>) にあわせた表示となります。

<comment>Param:</comment>
  <info>int</info>  <strong>$error_code</strong>  ソケットのエラー番号。たいていは <strong>socket_last_error()</strong> が返したものとなるでしょ
                    う。

<comment>Return:</comment>
  <info>string</info>  <strong>$error_code</strong> パラメータに対応するエラーメッセージを返します。

<comment>See Also:</comment>
   * <strong>socket_accept()</strong>
   * <strong>socket_bind()</strong>
   * <strong>socket_connect()</strong>
   * <strong>socket_listen()</strong>
   * <strong>socket_create()</strong>


id: socket_write
type: function
doc:
<comment>Description:</comment>
  ソケットに書き込む
  
  関数 <strong>socket_write()</strong> は、 <strong>$data</strong> の内容をソケット <strong>$socket</strong> に書き込みます。

<comment>Param:</comment>
  <info>Socket</info>    <strong>$socket</strong>  
  <info>string</info>    <strong>$data</strong>    書き込まれるバッファ。
  <info>int|null</info>  <strong>$length</strong>  オプションのパラメータ <strong>$length</strong> で、 ソケットに書き込むバイト数を指定することが
                     可能です。 この値がバッファの長さより大きい場合、自動的にバッファのサイズに切り
                     詰められます。

<comment>Return:</comment>
  <info>int|false</info>  ソケットへの書き込みに成功したデータのバイト数を返します。失敗した場合に <info>false</info> を返しま
             す。 エラーコードは <strong>socket_last_error()</strong> を用いて取得することができ、この値を
             <strong>socket_strerror()</strong> に渡すことでエラー情報を文字列で取得可能です。
             
             <strong>socket_write()</strong> がゼロを返すことも十分ありえます。 これは、書き込むデータが存在しなかっ
             たことを意味します。 エラーをチェックするために <info>false</info> かどうかを調べる際には、必ず <return>===</return>
             演算子を使用しましょう。

<comment>See Also:</comment>
   * <strong>socket_accept()</strong>
   * <strong>socket_bind()</strong>
   * <strong>socket_connect()</strong>
   * <strong>socket_listen()</strong>
   * <strong>socket_read()</strong>
   * <strong>socket_strerror()</strong>


id: socket_wsaprotocol_info_export
type: function
doc:
<comment>Description:</comment>
  WSAPROTOCOL_INFO 構造体をエクスポートする
  
  <return>WSAPROTOCOL_INFO</return> 構造体を共有メモリにエクスポートし、 <strong>socket_wsaprotocol_info_import()</strong> で使える識
  別子を返します。 エクスポートされるIDは、与えられた <strong>$process_id</strong> 向けのものだけが有効です。
  
  この関数は Windows でのみ利用可能です。

<comment>Param:</comment>
  <info>Socket</info>  <strong>$socket</strong>      有効な <class>Socket</class> クラスのインスタンス。
  <info>int</info>     <strong>$process_id</strong>  ソケットをインポートするプロセスのID

<comment>Return:</comment>
  <info>string|false</info>  インポートに使われる識別子を返します。 失敗した場合に <info>false</info> を返します

<comment>See Also:</comment>
   * <strong>socket_wsaprotocol_info_import()</strong>
   * <strong>socket_wsaprotocol_info_release()</strong>


id: socket_wsaprotocol_info_import
type: function
doc:
<comment>Description:</comment>
  別のプロセスからソケットをインポートする
  
  以前別のプロセスからエクスポートされたソケットをインポートします。
  
  この関数は Windows でのみ利用可能です。

<comment>Param:</comment>
  <info>string</info>  <strong>$info_id</strong>  <strong>socket_wsaprotocol_info_export()</strong> 関数が以前の呼び出しで返したID

<comment>Return:</comment>
  <info>Socket|false</info>  成功した時に、<class>Socket</class> クラスのインスタンスを返します。 失敗した場合に <info>false</info> を返しま
                す

<comment>See Also:</comment>
   * <strong>socket_wsaprotocol_info_export()</strong>


id: socket_wsaprotocol_info_release
type: function
doc:
<comment>Description:</comment>
  エクスポートした WSAPROTOCOL_INF 構造体を解放する
  
  与えられた <strong>$info_id</strong> に対応する共有メモリを解放します。
  
  この関数は Windows でのみ利用可能です。

<comment>Param:</comment>
  <info>string</info>  <strong>$info_id</strong>  <strong>socket_wsaprotocol_info_export()</strong> 関数が以前の呼び出しで返したID

<comment>Return:</comment>
  <info>bool</info>  成功した場合に <info>true</info> を、失敗した場合に <info>false</info> を返します。

<comment>See Also:</comment>
   * <strong>socket_wsaprotocol_info_export()</strong>


id: sodium_add
type: function
doc:
<comment>Description:</comment>
  巨大な数を加算する
  
  この関数は、 引数 <strong>$string2</strong> を <strong>$string1</strong> に加算し、 <strong>$string1</strong> の値を上書きします。 この関数は、両方の
  引数が、 符号なし整数をリトルエンディアンで表現した バイナリ文字列であると想定しています。

<comment>Param:</comment>
  <info>string</info>  <strong>$string1</strong>  符号なし整数をリトルエンディアンで表現した 任意の長さの文字列。 この引数はリファ
                    レンス渡しされ、 ふたつの引数の和を保持します。
  <info>string</info>  <strong>$string2</strong>  符号なし整数をリトルエンディアンで表現した 任意の長さの文字列。

<comment>Return:</comment>
  <info>void</info>  値を返しません。


id: sodium_base642bin
type: function
doc:
<comment>Description:</comment>
  base64 エンコードされた文字列を、生バイナリにデコードする
  
  base64 エンコードされた文字列を、 生バイナリにデコードします。 <strong>base64_decode()</strong> と異なり、
  <strong>sodium_base642bin()</strong> は定数時間 (この性質は、プレーンテキストや鍵のような、 暗号に関する入力に触れ
  るあらゆるコードで重要です) で実行でき、複数のエンコード方式をサポートしています。

<comment>Param:</comment>
  <info>string</info>  <strong>$string</strong>  エンコードされた文字列。
  <info>int</info>     <strong>$id</strong>      <info>SODIUM_BASE64_VARIANT_ORIGINAL</info> - 標準的な base64 文字列 (<return>A-Za-z0-9/\+</return>) の場合に指
                   定します。 <info>SODIUM_BASE64_VARIANT_ORIGINAL_NO_PADDING</info> - 標準的な base64 文字列
                   (<return>A-Za-z0-9/\+</return>) ですが、 <return>=</return> でパディングされていない場合に指定します。
                   <info>SODIUM_BASE64_VARIANT_URLSAFE</info> - URLに埋め込んでも安全な base64 エンコーディング
                   (<return>A-Za-z0-9\-_</return>)  <info>SODIUM_BASE64_VARIANT_URLSAFE_NO_PADDING</info> - URLに埋め込んでも安全
                   な base64 エンコーディング (<return>A-Za-z0-9\-_</return>) ですが、 <return>=</return> でパディングされていない場合
                   に指定します。
  <info>string</info>  <strong>$ignore</strong>  デコードする際に無視する文字(e.g. 空白文字)

<comment>Return:</comment>
  <info>string</info>  デコードされた文字列を返します。


id: sodium_bin2base64
type: function
doc:
<comment>Description:</comment>
  生バイナリを base64 文字列にエンコードする
  
  生のバイナリ文字列を base64 エンコードされた文字列に変換します。 <strong>base64_encode()</strong> と異なり、
  <strong>sodium_bin2base64()</strong> は定数時間 (この性質は、プレーンテキストや鍵のような、 暗号に関する入力に触れ
  るあらゆるコードで重要です)  で実行でき、複数のエンコード方式をサポートしています。

<comment>Param:</comment>
  <info>string</info>  <strong>$string</strong>  生のバイナリ文字列
  <info>int</info>     <strong>$id</strong>      <info>SODIUM_BASE64_VARIANT_ORIGINAL</info> - 標準的な base64 文字列 (<return>A-Za-z0-9/\+</return>) の場合に指
                   定します。 <info>SODIUM_BASE64_VARIANT_ORIGINAL_NO_PADDING</info> - 標準的な base64 文字列
                   (<return>A-Za-z0-9/\+</return>) ですが、 <return>=</return> でパディングしない場合に指定します。
                   <info>SODIUM_BASE64_VARIANT_URLSAFE</info> - URLに埋め込んでも安全な base64 エンコーディング
                   (<return>A-Za-z0-9\-_</return>)  <info>SODIUM_BASE64_VARIANT_URLSAFE_NO_PADDING</info> - URLに埋め込んでも安全
                   な base64 エンコーディング (<return>A-Za-z0-9\-_</return>) ですが、 <return>=</return> でパディングしない場合に指定
                   します。

<comment>Return:</comment>
  <info>string</info>  base64 エンコードされた文字列を返します。


id: sodium_bin2hex
type: function
doc:
<comment>Description:</comment>
  16進数にエンコードする
  
  生バイナリ文字列を16進文字列にエンコードします。 標準の16進文字列にエンコードする関数と異なり、
  <strong>sodium_bin2hex()</strong> は定数時間 (この性質は、プレーンテキストや鍵のような、 暗号に関する入力に触れるあ
  らゆるコードで重要です)  で実行できます。

<comment>Param:</comment>
  <info>string</info>  <strong>$string</strong>  生のバイナリ文字列。

<comment>Return:</comment>
  <info>string</info>  16進数にエンコードされた文字列を返します。


id: sodium_compare
type: function
doc:
<comment>Description:</comment>
  巨大な数を比較する
  
  任意の長さの、 符号なし整数をリトルエンディアンで表現したバイナリ文字列として、 ふたつの文字列を比
  較します。 サイドチャネル攻撃によるリークはありません。

<comment>Param:</comment>
  <info>string</info>  <strong>$string1</strong>  左オペランド
  <info>string</info>  <strong>$string2</strong>  右オペランド

<comment>Return:</comment>
  <info>int</info>  <strong>$string1</strong> が <strong>$string2</strong> より小さい場合は <return>-1</return> を返します。
       
       <strong>$string1</strong> が <strong>$string2</strong> より大きい場合は <return>1</return> を返します。
       
       ふたつの文字列が等しい場合 <return>0</return> を返します。


id: sodium_crypto_aead_aes256gcm_decrypt
type: function
doc:
<comment>Description:</comment>
  AES-256-GCM を用いてメッセージを検証し、復号する
  
  AES-256-GCM を用いてメッセージを検証し、復号します。 <strong>sodium_crypto_aead_aes256gcm_is_available()</strong>
  が <info>true</info> を返す場合にのみ利用可能です。

<comment>Param:</comment>
  <info>string</info>  <strong>$ciphertext</strong>       <strong>sodium_crypto_aead_aes256gcm_encrypt()</strong> が生成したフォーマット (暗号化さ
                            れたテキスト、タグを連結したもの) でなければなりません。
  <info>string</info>  <strong>$additional_data</strong>  追加の認証データ。 これは、 暗号化されたテキストに追加された認証タグを検
                            証するのに用いられますが、 このデータは暗号化されていませんし、 暗号化さ
                            れたテキストにも保存されていません。
  <info>string</info>  <strong>$nonce</strong>            メッセージごとに一度だけ使われる数値。 長さは12バイトです。
  <info>string</info>  <strong>$key</strong>              暗号化キー(256ビット)

<comment>Return:</comment>
  <info>string|false</info>  成功時にプレーンテキストを返します。 失敗した場合に <info>false</info> を返します


id: sodium_crypto_aead_aes256gcm_encrypt
type: function
doc:
<comment>Description:</comment>
  AES-256-GCM を使って暗号化し、認証を行う
  
  AES-256-GCM を使って暗号化し、認証を行います。 <strong>sodium_crypto_aead_aes256gcm_is_available()</strong> が <info>true</info>
  を返した場合にだけ利用可能です。

<comment>Param:</comment>
  <info>string</info>  <strong>$message</strong>          暗号化するプレーンテキスト
  <info>string</info>  <strong>$additional_data</strong>  追加の認証データ。 これは、 暗号化されたテキストに追加された認証タグを検
                            証するのに用いられますが、 このデータは暗号化されていませんし、 暗号化さ
                            れたテキストにも保存されません。
  <info>string</info>  <strong>$nonce</strong>            メッセージごとに一度だけ使われる数値。 長さは12バイトです。
  <info>string</info>  <strong>$key</strong>              暗号化キー(256ビット)

<comment>Return:</comment>
  <info>string</info>  暗号化されたテキストと、 認証タグを生のバイナリのバイト列に含めた文字列を返します。
          (フォーマット: 暗号化済みテキストの後に、タグが続きます)


id: sodium_crypto_aead_aes256gcm_is_available
type: function
doc:
<comment>Description:</comment>
  ハードウェアが AES256-GCM をサポートしているかを確認する
  
  この関数の戻り値は、 ハードウェアが AES256-GCM をサポートしているかどうかに依存します。

<comment>Return:</comment>
  <info>bool</info>  AES-256-GCM を使って暗号化しても安全な場合、<info>true</info> を返します。 そうでない場合、<info>false</info> を返しま
        す。


id: sodium_crypto_aead_aes256gcm_keygen
type: function
doc:
<comment>Description:</comment>
  ランダムな AES-256-GCM 暗号化キーを生成する
  
  <strong>sodium_crypto_aead_aes256gcm_encrypt()</strong> や  <strong>sodium_crypto_aead_aes256gcm_decrypt()</strong> で使うランダムな
  鍵を生成します。

<comment>Return:</comment>
  <info>string</info>  256ビット長のランダムな暗号化キーを返します。


id: sodium_crypto_aead_chacha20poly1305_decrypt
type: function
doc:
<comment>Description:</comment>
  ChaCha20-Poly1305 を用いてメッセージを検証し、復号する
  
  ChaCha20-Poly1305 を用いてメッセージを検証し、復号します。

<comment>Param:</comment>
  <info>string</info>  <strong>$ciphertext</strong>       <strong>sodium_crypto_aead_chacha20poly1305_encrypt()</strong> が生成したフォーマット (暗
                            号化されたテキスト、タグを連結したもの) でなければなりません。
  <info>string</info>  <strong>$additional_data</strong>  追加の認証データ。 これは、 暗号化されたテキストに追加された認証タグを検
                            証するのに用いられますが、 このデータは暗号化されていませんし、 暗号化さ
                            れたテキストにも保存されていません。
  <info>string</info>  <strong>$nonce</strong>            メッセージごとに一度だけ使われる数値。 長さは8バイトです。
  <info>string</info>  <strong>$key</strong>              暗号化キー(256ビット)

<comment>Return:</comment>
  <info>string|false</info>  成功時にプレーンテキストを返します。 失敗した場合に <info>false</info> を返します


id: sodium_crypto_aead_chacha20poly1305_encrypt
type: function
doc:
<comment>Description:</comment>
  ChaCha20-Poly1305 を使って暗号化し、認証を行う
  
  ChaCha20-Poly1305 を使って暗号化し、認証を行います。

<comment>Param:</comment>
  <info>string</info>  <strong>$message</strong>          暗号化するプレーンテキスト
  <info>string</info>  <strong>$additional_data</strong>  追加の認証データ。 これは、 暗号化されたテキストに追加された認証タグを検
                            証するのに用いられますが、 このデータは暗号化されていませんし、 暗号化さ
                            れたテキストにも保存されません。
  <info>string</info>  <strong>$nonce</strong>            メッセージごとに一度だけ使われる数値。 長さは8バイトです。
  <info>string</info>  <strong>$key</strong>              暗号化キー(256ビット)

<comment>Return:</comment>
  <info>string</info>  成功時には、暗号化されたテキストと、 認証タグを返します。 失敗した場合に <info>false</info> を返します.


id: sodium_crypto_aead_chacha20poly1305_ietf_decrypt
type: function
doc:
<comment>Description:</comment>
  暗号化されたテキストが、有効なタグを持っているかを調べる
  
  ChaCha20-Poly1305 を用いてメッセージを検証し、復号します。 (IETF バリアントです)
  
  IETF バリアントは、96ビットの nonce と 32ビットの内部カウンタを持ちます。 標準では、nonce, 内部カ
  ウンタともに64ビットです。

<comment>Param:</comment>
  <info>string</info>  <strong>$ciphertext</strong>       <strong>sodium_crypto_aead_chacha20poly1305_ietf_encrypt()</strong> が生成したフォーマッ
                            ト (暗号化されたテキスト、タグを連結したもの) でなければなりません。
  <info>string</info>  <strong>$additional_data</strong>  追加の認証データ。 これは、 暗号化されたテキストに追加された認証タグを検
                            証するのに用いられますが、 このデータは暗号化されていませんし、 暗号化さ
                            れたテキストにも保存されていません。
  <info>string</info>  <strong>$nonce</strong>            メッセージごとに一度だけ使われる数値。 長さは12バイトです。
  <info>string</info>  <strong>$key</strong>              暗号化キー(256ビット)

<comment>Return:</comment>
  <info>string|false</info>  成功時にプレーンテキストを返します。 失敗した場合に <info>false</info> を返します


id: sodium_crypto_aead_chacha20poly1305_ietf_encrypt
type: function
doc:
<comment>Description:</comment>
  メッセージを暗号化する
  
  ChaCha20-Poly1305 を使って暗号化し、認証を行います。 (IETF バリアントです)
  
  IETF バリアントは、96ビットの nonce と 32ビットの内部カウンタを持ちます。 標準では、nonce, 内部カ
  ウンタともに64ビットです。

<comment>Param:</comment>
  <info>string</info>  <strong>$message</strong>          暗号化するプレーンテキスト
  <info>string</info>  <strong>$additional_data</strong>  追加の認証データ。 これは、 暗号化されたテキストに追加された認証タグを検
                            証するのに用いられますが、 このデータは暗号化されていませんし、 暗号化さ
                            れたテキストにも保存されません。
  <info>string</info>  <strong>$nonce</strong>            メッセージごとに一度だけ使われる数値。 長さは12バイトです。
  <info>string</info>  <strong>$key</strong>              暗号化キー(256ビット)

<comment>Return:</comment>
  <info>string</info>  成功時には、 暗号化されたテキストと認証タグを返します。 失敗した場合に <info>false</info> を返します.


id: sodium_crypto_aead_chacha20poly1305_ietf_keygen
type: function
doc:
<comment>Description:</comment>
  ランダムな ChaCha20-Poly1305 (IETF) 暗号化キーを生成する
  
  <strong>sodium_crypto_aead_chacha20poly1305_ietf_encrypt()</strong> や
  <strong>sodium_crypto_aead_chacha20poly1305_ietf_decrypt()</strong> で使うランダムな鍵を生成します。

<comment>Return:</comment>
  <info>string</info>  256ビット長のランダムな暗号化キーを返します。


id: sodium_crypto_aead_chacha20poly1305_keygen
type: function
doc:
<comment>Description:</comment>
  ランダムな ChaCha20-Poly1305 暗号化キーを生成する
  
  <strong>sodium_crypto_aead_chacha20poly1305_encrypt()</strong> や <strong>sodium_crypto_aead_chacha20poly1305_decrypt()</strong> で
  使うランダムな鍵を生成します。

<comment>Return:</comment>
  <info>string</info>  256ビット長のランダムな暗号化キーを返します。


id: sodium_crypto_aead_xchacha20poly1305_ietf_decrypt
type: function
doc:
<comment>Description:</comment>
  XChaCha20-Poly1305 を用いてメッセージを検証し、復号する(AEADモードのうちもっとも好ましい)
  
  ChaCha20-Poly1305 (eXtended-nonce バリアント) を用いてメッセージを検証し、復号します。
  
  一般的には、提供されている AEADモードの中で、 XChaCha20-Poly1305 を使うのがもっとも好ましいです。

<comment>Param:</comment>
  <info>string</info>  <strong>$ciphertext</strong>       <strong>sodium_crypto_aead_chacha20poly1305_ietf_encrypt()</strong> が生成したフォーマッ
                            ト (暗号化されたテキスト、タグを連結したもの) でなければなりません。
  <info>string</info>  <strong>$additional_data</strong>  追加の認証データ。 これは、 暗号化されたテキストに追加された認証タグを検
                            証するのに用いられますが、 このデータは暗号化されていませんし、 暗号化さ
                            れたテキストにも保存されていません。
  <info>string</info>  <strong>$nonce</strong>            メッセージごとに一度だけ使われる数値。 長さは24バイトです。 これは、 (た
                            とえば、<strong>random_bytes()</strong>を使って) ランダムな値を生成するのに十分大きな長さ
                            です。
  <info>string</info>  <strong>$key</strong>              暗号化キー(256ビット)

<comment>Return:</comment>
  <info>string|false</info>  成功時にプレーンテキストを返します。 失敗した場合に <info>false</info> を返します


id: sodium_crypto_aead_xchacha20poly1305_ietf_encrypt
type: function
doc:
<comment>Description:</comment>
  XChaCha20-Poly1305 を使って暗号化し、認証を行う(AEADモードのうちもっとも好ましい)
  
  XChaCha20-Poly1305 (eXtended-nonce バリアント) を使って暗号化し、認証を行います。
  
  一般的には、提供されている AEADモードの中で、 XChaCha20-Poly1305 を使うのがもっとも好ましいです。

<comment>Param:</comment>
  <info>string</info>  <strong>$message</strong>          暗号化するプレーンテキスト
  <info>string</info>  <strong>$additional_data</strong>  追加の認証データ。 これは、 暗号化されたテキストに追加された認証タグを検
                            証するのに用いられますが、 このデータは暗号化されていませんし、 暗号化さ
                            れたテキストにも保存されません。
  <info>string</info>  <strong>$nonce</strong>            メッセージごとに一度だけ使われる数値。 長さは24バイトです。 これは、 (た
                            とえば、<strong>random_bytes()</strong>を使って)  ランダムな値を生成するのに十分大きな長
                            さです。
  <info>string</info>  <strong>$key</strong>              暗号化キー(256ビット)

<comment>Return:</comment>
  <info>string</info>  成功時に、暗号化されたテキストとタグを返します。 失敗した場合に <info>false</info> を返します.


id: sodium_crypto_aead_xchacha20poly1305_ietf_keygen
type: function
doc:
<comment>Description:</comment>
  ランダムな XChaCha20-Poly1305 暗号化キーを生成する
  
  <strong>sodium_crypto_aead_xchacha20poly1305_ietf_encrypt()</strong> や
  <strong>sodium_crypto_aead_xchacha20poly1305_ietf_decrypt()</strong> で使うランダムな鍵を生成します。

<comment>Return:</comment>
  <info>string</info>  256ビット長のランダムな暗号化キーを返します。


id: sodium_crypto_auth
type: function
doc:
<comment>Description:</comment>
  メッセージに対応するタグを計算する
  
  対称鍵によるメッセージ認証を行います。 <strong>sodium_crypto_auth()</strong> は完全性は提供しますが、機密性は提供し
  ません。
  
  (<strong>sodium_crypto_sign_detached()</strong> のような)  電子署名と異なり、 メッセージを検証する側は、 自分たちの
  メッセージを認証することもできます。 (つまり、対称鍵による認証です)

<comment>Param:</comment>
  <info>string</info>  <strong>$message</strong>  認証したいメッセージ
  <info>string</info>  <strong>$key</strong>      認証鍵

<comment>Return:</comment>
  <info>string</info>  認証タグを返します。


id: sodium_crypto_auth_keygen
type: function
doc:
<comment>Description:</comment>
  sodium_crypto_auth で使う、ランダムな鍵を生成する
  
  <strong>sodium_crypto_auth()</strong> や <strong>sodium_crypto_auth_verify()</strong> で使う鍵を生成します。

<comment>Return:</comment>
  <info>string</info>  256ビット長のランダムな暗号化キーを返します。


id: sodium_crypto_auth_verify
type: function
doc:
<comment>Description:</comment>
  メッセージのタグが有効かどうかを検証する
  
  指定されたメッセージと鍵に対応した認証タグが有効かどうかを検証します。
  
  (<strong>sodium_crypto_sign_verify_detached()</strong> のような) 電子署名と異なり、 メッセージを検証する側は、 自分
  たちのメッセージを認証することもできます。 (つまり、対称鍵による認証です)

<comment>Param:</comment>
  <info>string</info>  <strong>$mac</strong>      <strong>sodium_crypto_auth()</strong> によって生成された認証タグ
  <info>string</info>  <strong>$message</strong>  メッセージ
  <info>string</info>  <strong>$key</strong>      認証鍵

<comment>Return:</comment>
  <info>bool</info>  成功した場合に <info>true</info> を、失敗した場合に <info>false</info> を返します。


id: sodium_crypto_box
type: function
doc:
<comment>Description:</comment>
  認証付きの公開鍵による暗号化
  
  非対称(公開鍵)暗号を使ってメッセージを暗号化します。
  
  <strong>sodium_crypto_box()</strong> というプレフィックスが付いた関数が使うアルゴリズムは、 Elliptic Curve
  Diffie-Hellman over the Montgomery curve, Curve25519; 略して X25519 です。

<comment>Param:</comment>
  <info>string</info>  <strong>$message</strong>   暗号化するメッセージ
  <info>string</info>  <strong>$nonce</strong>     メッセージごとに一度だけ使われる数値。 長さは24バイトです。 これは、 (たとえ
                     ば、<strong>random_bytes()</strong>を使って) ランダムな値を生成するのに十分大きな長さです。
  <info>string</info>  <strong>$key_pair</strong>  <strong>sodium_crypto_box_keypair_from_secretkey_and_publickey()</strong> を参照ください。 この
                     鍵ペアには、 送信者の X25519 形式の秘密鍵と、 受信者の X25519 形式の公開鍵が含
                     まれているべきです。

<comment>Return:</comment>
  <info>string</info>  暗号化されたメッセージ(暗号化済みのテキストと、認証タグ)を返します。 暗号化済みのテキスト
          は、 生のバイナリ文字列の分だけ、 プレーンテキストより16バイト長くなっています。 安全なエ
          ンコード方法については、 <strong>sodium_bin2base64()</strong> を参照ください。


id: sodium_crypto_box_keypair
type: function
doc:
<comment>Description:</comment>
  秘密鍵と、それに対応する公開鍵をランダムに生成する
  
  秘密鍵と公開鍵を、ひとつの文字列として生成します。
  
  この関数で生成する鍵ペアの文字列から秘密鍵を取り出すには、 <strong>sodium_crypto_box_secretkey()</strong> を参照く
  ださい。 この関数で生成する鍵ペアの文字列から公開鍵を取り出すには、 <strong>sodium_crypto_box_publickey()</strong>
  を参照ください。

<comment>Return:</comment>
  <info>string</info>  X25519 形式の秘密鍵と、 それに対応する公開鍵を両方含んだ文字列を返します。


id: sodium_crypto_box_keypair_from_secretkey_and_publickey
type: function
doc:
<comment>Description:</comment>
  秘密鍵と公開鍵から、鍵ペアを生成する
  
  この関数は、 <strong>crypto_box()</strong> のような、 API の要件を満たすために存在しています。 一方の側の秘密鍵と、
  もう一方の側の公開鍵を渡すと、 会話に必要な "鍵ペア" が得られます。

<comment>Param:</comment>
  <info>string</info>  <strong>$secret_key</strong>  秘密鍵
  <info>string</info>  <strong>$public_key</strong>  公開鍵

<comment>Return:</comment>
  <info>string</info>  X25519 形式のキーペアを返します。


id: sodium_crypto_box_open
type: function
doc:
<comment>Description:</comment>
  認証付きの公開鍵による復号
  
  非対称(公開鍵)暗号を使って、メッセージを復号します。

<comment>Param:</comment>
  <info>string</info>  <strong>$ciphertext</strong>  復号を試みる、暗号化されたメッセージ
  <info>string</info>  <strong>$nonce</strong>       メッセージごとに一度だけ使われる数値。 長さは24バイトです。 これは、 (たとえ
                       ば、<strong>random_bytes()</strong>を使って) ランダムな値を生成するのに十分大きな長さです。
  <info>string</info>  <strong>$key_pair</strong>    <strong>sodium_crypto_box_keypair_from_secretkey_and_publickey()</strong> を参照ください。 こ
                       の鍵ペアには、送信者の公開鍵と、 受信側の秘密鍵が含まれているはずです。

<comment>Return:</comment>
  <info>string|false</info>  成功した場合、プレーンテキストメッセージを返します。 失敗した場合に <info>false</info> を返しま
                す.


id: sodium_crypto_box_publickey
type: function
doc:
<comment>Description:</comment>
  crypto_box 鍵ペアから、公開鍵を取り出す
  
  鍵ペアを指定し、そこから公開鍵のみを取り出します。

<comment>Param:</comment>
  <info>string</info>  <strong>$key_pair</strong>  <strong>sodium_crypto_box_keypair()</strong> や <strong>sodium_crypto_box_seed_keypair()</strong> から生成した鍵
                     ペア

<comment>Return:</comment>
  <info>string</info>  X25519 形式の公開鍵を返します。


id: sodium_crypto_box_publickey_from_secretkey
type: function
doc:
<comment>Description:</comment>
  秘密鍵から公開鍵を計算する
  
  秘密鍵を指定すると、それに対する公開鍵を計算します。
  
  この関数は、<strong>crypto_box()</strong> 関数で使われるタイプの鍵 (Elliptic Curve Diffie-Hellman over the
  Montgomery curve, Curve25519; 略して X25519) でのみ動作します。 <strong>crypto_sign()</strong> 関数で使われるタイプ
  の鍵 (Edwards Digital Signature Algorithm over the Edwards Curve; 略して Ed25519) では動作しませ
  ん。

<comment>Param:</comment>
  <info>string</info>  <strong>$secret_key</strong>  X25519 形式の秘密鍵

<comment>Return:</comment>
  <info>string</info>  X25519 形式の公開鍵を返します。


id: sodium_crypto_box_seal
type: function
doc:
<comment>Description:</comment>
  匿名の公開鍵暗号による暗号化
  
  受信側のみが復号できるやり方で、 メッセージを暗号化します。
  
  <strong>sodium_crypto_box()</strong> と異なり、 <strong>sodium_crypto_box_seal()</strong> に必要なのは、 受信側の公開鍵だけです。 そ
  の結果として、暗号化されたメッセージは静的な公開鍵と結びつきません。 そのため、認証が必要になりま
  す。 それゆえに、匿名の公開鍵暗号と呼ばれています。
  
  <strong>sodium_crypto_box_seal()</strong> 関数は暗号化メッセージの完全性を提供しています。 送信側の完全性の認証だけ
  ではありません。
  
  送信側を認証したい場合、 <strong>sodium_crypto_sign()</strong> 関数が入門として最適です。

<comment>Param:</comment>
  <info>string</info>  <strong>$message</strong>     暗号化するメッセージ
  <info>string</info>  <strong>$public_key</strong>  メッセージを復号できる鍵に対応する、公開鍵

<comment>Return:</comment>
  <info>string</info>  暗号化された文字列。 一度限りの公開鍵、 暗号化されたメッセージ、 認証タグ というフォーマッ
          トで成ります。


id: sodium_crypto_box_seal_open
type: function
doc:
<comment>Description:</comment>
  匿名の公開鍵暗号による復号
  
  <strong>sodium_crypto_box_seal()</strong> を使って暗号化されたメッセージを復号します。

<comment>Param:</comment>
  <info>string</info>  <strong>$ciphertext</strong>  暗号化されたメッセージ
  <info>string</info>  <strong>$key_pair</strong>    受信側の鍵ペア。 秘密鍵が含まれている必要があります。

<comment>Return:</comment>
  <info>string|false</info>  成功時にはプレーンテキストを返します。 失敗した場合に <info>false</info> を返します.


id: sodium_crypto_box_secretkey
type: function
doc:
<comment>Description:</comment>
  crypto_box 鍵ペアから、秘密鍵を取り出す
  
  鍵ペアを指定し、秘密鍵だけを取り出します。

<comment>Param:</comment>
  <info>string</info>  <strong>$key_pair</strong>  <strong>sodium_crypto_box_keypair()</strong> や <strong>sodium_crypto_box_seed_keypair()</strong> によって生成さ
                     れた鍵ペア

<comment>Return:</comment>
  <info>string</info>  X25519 形式の秘密鍵を返します。


id: sodium_crypto_box_seed_keypair
type: function
doc:
<comment>Description:</comment>
  単一の鍵から、結果がひとつに定まる鍵ペアを派生させる
  
  秘密鍵を生成するためのシードを介して、 公開鍵を派生させ、秘密鍵と公開鍵のふたつを鍵ペアとして返し
  ます。
  
  <return>*_seed_keypair</return> 関数はパスワードとソルトから鍵ペアを生成することと同じです。 <strong>$seed</strong> としての結果を、
  鍵を生成するために使います。

<comment>Param:</comment>
  <info>string</info>  <strong>$seed</strong>  暗号の処理をした入力。 長さは32バイトでなければなりません。

<comment>Return:</comment>
  <info>string</info>  X25519 形式のキーペア(秘密鍵と公開鍵)を返します。


id: sodium_crypto_core_ristretto255_add
type: function
doc:
<comment>Description:</comment>
  要素を追加する
  
  要素 <strong>$q</strong> を <strong>$p</strong> に追加します。 libsodium 1.0.18 以降で利用可能です。
  
  この関数は、
  現在のところ詳細な情報はありません。引数のリストのみが
  記述されています。

<comment>Param:</comment>
  <info>string</info>  <strong>$p</strong>  追加される要素。
  <info>string</info>  <strong>$q</strong>  追加する要素。

<comment>Return:</comment>
  <info>string</info>  32バイト長のランダムな文字列を返します。

<comment>See Also:</comment>
   * <strong>sodium_crypto_core_ristretto255_random()</strong>
   * <strong>sodium_crypto_core_ristretto255_sub()</strong>


id: sodium_crypto_core_ristretto255_from_hash
type: function
doc:
<comment>Description:</comment>
  ベクトルをマップする
  
  64バイト長のベクトル <strong>$s</strong> をグループの要素にマップします。 libsodium 1.0.18 以降で利用可能です。
  
  この関数は、
  現在のところ詳細な情報はありません。引数のリストのみが
  記述されています。

<comment>Param:</comment>
  <info>string</info>  <strong>$s</strong>  64バイト長のベクトル。

<comment>Return:</comment>
  <info>string</info>  32バイト長のランダムな文字列を返します。

<comment>See Also:</comment>
   * <strong>sodium_hex2bin()</strong>
   * <strong>sodium_bin2hex()</strong>
   * <strong>sodium_crypto_core_ristretto255_from_hash()</strong>


id: sodium_crypto_core_ristretto255_is_valid_point
type: function
doc:
<comment>Description:</comment>
  座標が ristretto255 曲線上にあるかを調べる
  
  ristretto255 曲線上に座標があるかを判定します。 in canonical form, on the main subgroup, and that
  the point doesn't have a small order. libsodium 1.0.18 以降で利用可能です。
  
  この関数は、
  現在のところ詳細な情報はありません。引数のリストのみが
  記述されています。

<comment>Param:</comment>
  <info>string</info>  <strong>$s</strong>  楕円曲線の座標

<comment>Return:</comment>
  <info>bool</info>  <strong>$s</strong> が ristretto255 曲線上にある場合に <info>true</info> を返します。 そうでない場合、<info>false</info> を返します。

<comment>See Also:</comment>
   * <strong>sodium_crypto_core_ristretto255_scalar_random()</strong>
   * <strong>sodium_crypto_scalarmult_ristretto255_base()</strong>


id: sodium_crypto_core_ristretto255_random
type: function
doc:
<comment>Description:</comment>
  ランダムな鍵を生成する
  
  ランダムな鍵を生成します。 libsodium 1.0.18 以降で利用可能です。
  
  この関数は、
  現在のところ詳細な情報はありません。引数のリストのみが
  記述されています。

<comment>Return:</comment>
  <info>string</info>  32バイト長のランダムな文字列を返します。

<comment>See Also:</comment>
   * <strong>sodium_crypto_core_ristretto255_add()</strong>
   * <strong>sodium_crypto_core_ristretto255_sub()</strong>


id: sodium_crypto_core_ristretto255_scalar_add
type: function
doc:
<comment>Description:</comment>
  スカラー値を追加する
  
  要素 <strong>$y</strong> を <strong>$x</strong> に追加します。 libsodium 1.0.18 以降で利用可能です。
  
  この関数は、
  現在のところ詳細な情報はありません。引数のリストのみが
  記述されています。

<comment>Param:</comment>
  <info>string</info>  <strong>$x</strong>  スカラー値。 X座標を表します。
  <info>string</info>  <strong>$y</strong>  スカラー値。 Y座標を表します。

<comment>Return:</comment>
  <info>string</info>  32バイト長のランダムな文字列を返します。

<comment>See Also:</comment>
   * <strong>sodium_crypto_core_ristretto255_scalar_random()</strong>
   * <strong>sodium_crypto_core_ristretto255_scalar_sub()</strong>


id: sodium_crypto_core_ristretto255_scalar_complement
type: function
doc:
<comment>Description:</comment>
  The sodium_crypto_core_ristretto255_scalar_complement purpose
  
  libsodium 1.0.18 以降で利用可能です。
  
  この関数は、
  現在のところ詳細な情報はありません。引数のリストのみが
  記述されています。

<comment>Param:</comment>
  <info>string</info>  <strong>$s</strong>  スカラー値。

<comment>Return:</comment>
  <info>string</info>  32バイト長のランダムな文字列を返します。

<comment>See Also:</comment>
   * <strong>sodium_crypto_core_ristretto255_scalar_random()</strong>


id: sodium_crypto_core_ristretto255_scalar_invert
type: function
doc:
<comment>Description:</comment>
  スカラー値を反転させる
  
  スカラー値を反転させます。 libsodium 1.0.18 以降で利用可能です。
  
  この関数は、
  現在のところ詳細な情報はありません。引数のリストのみが
  記述されています。

<comment>Param:</comment>
  <info>string</info>  <strong>$s</strong>  スカラー値。

<comment>Return:</comment>
  <info>string</info>  32バイトのランダムな文字列を返します。

<comment>See Also:</comment>
   * <strong>sodium_crypto_core_ristretto255_scalar_random()</strong>


id: sodium_crypto_core_ristretto255_scalar_mul
type: function
doc:
<comment>Description:</comment>
  スカラー値を乗算する
  
  スカラー値を乗算します。 libsodium 1.0.18 以降で利用可能です。
  
  この関数は、
  現在のところ詳細な情報はありません。引数のリストのみが
  記述されています。

<comment>Param:</comment>
  <info>string</info>  <strong>$x</strong>  スカラー値。 X座標を表します。
  <info>string</info>  <strong>$y</strong>  スカラー値。 Y座標を表します。

<comment>Return:</comment>
  <info>string</info>  32バイト長のランダムな文字列を返します。

<comment>See Also:</comment>
   * <strong>sodium_crypto_core_ristretto255_scalar_random()</strong>


id: sodium_crypto_core_ristretto255_scalar_negate
type: function
doc:
<comment>Description:</comment>
  スカラー値の論理否定を行う
  
  スカラー値の論理否定演算を行います。 libsodium 1.0.18 以降で利用可能です。
  
  この関数は、
  現在のところ詳細な情報はありません。引数のリストのみが
  記述されています。

<comment>Param:</comment>
  <info>string</info>  <strong>$s</strong>  スカラー値。

<comment>Return:</comment>
  <info>string</info>  32バイト長のランダムな文字列を返します。

<comment>See Also:</comment>
   * <strong>sodium_crypto_core_ristretto255_scalar_random()</strong>


id: sodium_crypto_core_ristretto255_scalar_random
type: function
doc:
<comment>Description:</comment>
  ランダムな鍵を生成する
  
  ランダムな鍵を生成します。 libsodium 1.0.18 以降で利用可能です。
  
  この関数は、
  現在のところ詳細な情報はありません。引数のリストのみが
  記述されています。

<comment>Return:</comment>
  <info>string</info>  32バイト長のランダムな文字列を返します。

<comment>See Also:</comment>
   * <strong>sodium_crypto_core_ristretto255_scalar_add()</strong>
   * <strong>sodium_crypto_core_ristretto255_scalar_sub()</strong>


id: sodium_crypto_core_ristretto255_scalar_reduce
type: function
doc:
<comment>Description:</comment>
  スカラー値を縮小する
  
  スカラー値を縮小します。 libsodium 1.0.18 以降で利用可能です。
  
  この関数は、
  現在のところ詳細な情報はありません。引数のリストのみが
  記述されています。

<comment>Param:</comment>
  <info>string</info>  <strong>$s</strong>  スカラー値

<comment>Return:</comment>
  <info>string</info>  32バイト長のランダムな文字列を返します。

<comment>See Also:</comment>
   * <strong>sodium_crypto_core_ristretto255_scalar_random()</strong>


id: sodium_crypto_core_ristretto255_scalar_sub
type: function
doc:
<comment>Description:</comment>
  スカラー値を減らす
  
  <strong>$x</strong> から スカラー値 <strong>$y</strong> を減らします。 libsodium 1.0.18 以降で利用可能です。
  
  この関数は、
  現在のところ詳細な情報はありません。引数のリストのみが
  記述されています。

<comment>Param:</comment>
  <info>string</info>  <strong>$x</strong>  スカラー値。 X座標を表します。
  <info>string</info>  <strong>$y</strong>  スカラー値。 Y座標を表します。

<comment>Return:</comment>
  <info>string</info>  32バイト長のランダムな文字列を返します。

<comment>See Also:</comment>
   * <strong>sodium_crypto_core_ristretto255_scalar_random()</strong>
   * <strong>sodium_crypto_core_ristretto255_scalar_add()</strong>


id: sodium_crypto_core_ristretto255_sub
type: function
doc:
<comment>Description:</comment>
  要素の値を減らす
  
  <strong>$p</strong> から 要素 <strong>$q</strong> を減らします。 libsodium 1.0.18 以降で利用可能です。
  
  この関数は、
  現在のところ詳細な情報はありません。引数のリストのみが
  記述されています。

<comment>Param:</comment>
  <info>string</info>  <strong>$p</strong>  減らされる要素。
  <info>string</info>  <strong>$q</strong>  減らす要素。

<comment>Return:</comment>
  <info>string</info>  32バイト長のランダムな文字列を返します。

<comment>See Also:</comment>
   * <strong>sodium_crypto_core_ristretto255_random()</strong>
   * <strong>sodium_crypto_core_ristretto255_add()</strong>


id: sodium_crypto_generichash
type: function
doc:
<comment>Description:</comment>
  メッセージのハッシュ値を得る
  
  BLAKE2b を使い、メッセージをハッシュ化します。

<comment>Param:</comment>
  <info>string</info>  <strong>$message</strong>  ハッシュ化するメッセージ
  <info>string</info>  <strong>$key</strong>      (オプション)暗号キー。 この値は、HMACキーと同じ役割を果たしますが、 内部的な
                    BLAKE2 のステートの予約されたセクションに統合されています。
  <info>int</info>     <strong>$length</strong>   出力の長さ

<comment>Return:</comment>
  <info>string</info>  ハッシュ値を生のバイトとして返します。 16進エンコードしたい場合、 この関数の結果を
          <strong>sodium_bin2hex()</strong> に渡すことができます。


id: sodium_crypto_generichash_final
type: function
doc:
<comment>Description:</comment>
  ハッシュ値を計算する
  
  ストリーミングハッシュAPI の処理を完了させるメソッドです。

<comment>Param:</comment>
  <info>string</info>  <strong>$state</strong>   <strong>sodium_crypto_generichash_init()</strong> から返されたハッシュステート。
  <info>int</info>     <strong>$length</strong>  出力の長さ

<comment>Return:</comment>
  <info>string</info>  ハッシュ値を返します。


id: sodium_crypto_generichash_init
type: function
doc:
<comment>Description:</comment>
  ストリーミングのためにハッシュを初期化する
  
  ストリーミングハッシュAPI の初期化メソッドです。

<comment>Param:</comment>
  <info>string</info>  <strong>$key</strong>     ハッシュキー
  <info>int</info>     <strong>$length</strong>  ハッシュ関数に期待する出力の長さ

<comment>Return:</comment>
  <info>string</info>  生のバイナリ文字列としてシリアライズされた、 ハッシュステートを返します。


id: sodium_crypto_generichash_keygen
type: function
doc:
<comment>Description:</comment>
  ランダムなハッシュキーを生成する
  
  ハッシュAPIで使うランダムなキーを生成します。

<comment>Return:</comment>
  <info>string</info>  ランダムな 256ビット長のキーを返します。


id: sodium_crypto_generichash_update
type: function
doc:
<comment>Description:</comment>
  メッセージをハッシュに追加する
  
  内部的なハッシュステートにメッセージを追加します。

<comment>Param:</comment>
  <info>string</info>  <strong>$state</strong>    <strong>sodium_crypto_generichash_init()</strong>. の戻り値
  <info>string</info>  <strong>$message</strong>  ハッシュステートに追加するデータ

<comment>Return:</comment>
  <info>true</info>  常に <info>true</info> を返します。


id: sodium_crypto_kdf_derive_from_key
type: function
doc:
<comment>Description:</comment>
  サブキーを派生させる
  
  ルートキーと追加のコンテクストから、サブキーを派生させます。
  
  <strong>hash_hkdf()</strong> に似ています。

<comment>Param:</comment>
  <info>int</info>     <strong>$subkey_length</strong>  返すキーの長さ(バイト単位)
  <info>int</info>     <strong>$subkey_id</strong>      与えられたルートキーから返されるN番目のサブキーのID。 シークさせる時に便利
                          です。
  <info>string</info>  <strong>$context</strong>        アプリケーション特有のコンテクスト
  <info>string</info>  <strong>$key</strong>            サブキーを派生させるルートキー

<comment>Return:</comment>
  <info>string</info>  擬似ランダムな(生のバイナリの)バイト列を文字列として返します。


id: sodium_crypto_kdf_keygen
type: function
doc:
<comment>Description:</comment>
  KDF インターフェイスのために、ランダムなルートキーを生成する
  
  <strong>sodium_crypto_kdf_derive_from_key()</strong> で使うルートキーに適合する、ランダムなキーを生成します。

<comment>Return:</comment>
  <info>string</info>  ランダムな256ビット長のキーを返します。


id: sodium_crypto_kx_client_session_keys
type: function
doc:
<comment>Description:</comment>
  クライアント側のセッションキーを計算する
  
  X25519 + BLAKE2b 鍵交換メソッドを使い、 クライアント側のセッションキーを計算します。

<comment>Param:</comment>
  <info>string</info>  <strong>$client_key_pair</strong>  <strong>sodium_crypto_kx_keypair()</strong> で生成した、crypto_kx の鍵ペア。
  <info>string</info>  <strong>$server_key</strong>       crypto_kx の公開鍵

<comment>Return:</comment>
  <info>array</info>  ふたつの文字列からなる配列。 最初の文字列は、サーバーから受け取るデータとして使います。 ふ
         たつめの文字列は、サーバーに送信するデータとして使います。


id: sodium_crypto_kx_keypair
type: function
doc:
<comment>Description:</comment>
  新しい sodium の鍵ペアを生成する
  
  秘密鍵(32バイト)の後に、 公開鍵(32バイト)が続く、 sodium の鍵ペアを生成します。 これらの鍵は、それ
  ぞれ <strong>sodium_crypto_kx_secretkey()</strong> と <strong>sodium_crypto_kx_publickey()</strong> を呼び出すことで取得できます。

<comment>Return:</comment>
  <info>string</info>  成功時に、新しい鍵ペアを返します。 失敗した場合、例外をスローします。


id: sodium_crypto_kx_publickey
type: function
doc:
<comment>Description:</comment>
  crypto_kx 鍵ペアから、公開鍵を取り出す
  
  crypto_kx の鍵ペアから、公開鍵を取り出します。

<comment>Param:</comment>
  <info>string</info>  <strong>$key_pair</strong>  X25519 形式の鍵ペア。 たとえば、<strong>sodium_crypto_kx_keypair()</strong> から生成されたもので
                     す。

<comment>Return:</comment>
  <info>string</info>  X25519 形式の公開鍵を返します。


id: sodium_crypto_kx_secretkey
type: function
doc:
<comment>Description:</comment>
  crypto_kx 鍵ペアから、秘密鍵を取り出す
  
  crypto_kx 鍵ペアから、秘密鍵を取り出します。

<comment>Param:</comment>
  <info>string</info>  <strong>$key_pair</strong>  X25519 形式の鍵ペア。 たとえば、 <strong>sodium_crypto_kx_keypair()</strong> から生成されたもの
                     です。

<comment>Return:</comment>
  <info>string</info>  X25519 形式の秘密鍵を返します。


id: sodium_crypto_kx_seed_keypair
type: function
doc:
<comment>Description:</comment>
  Description
  
  この関数は、
  現在のところ詳細な情報はありません。引数のリストのみが
  記述されています。

<comment>Param:</comment>
  <info>string</info>  <strong>$seed</strong>  

<comment>Return:</comment>
  <info>string</info>  


id: sodium_crypto_kx_server_session_keys
type: function
doc:
<comment>Description:</comment>
  サーバー側のセッションキーを計算する
  
  X25519 + BLAKE2b 鍵交換メソッドを使い、 サーバー側のセッションキーを計算します。

<comment>Param:</comment>
  <info>string</info>  <strong>$server_key_pair</strong>  crypto_kx 鍵ペア。 <strong>sodium_crypto_kx_keypair()</strong> で生成されたものです。
  <info>string</info>  <strong>$client_key</strong>       crypto_kx の公開鍵

<comment>Return:</comment>
  <info>array</info>  ふたつの文字列からなる配列を返します。 ひとつめはクライアントから受信する文字列として使いま
         す。 ふたつめはクライアントに送信するデータとして使います。


id: sodium_crypto_pwhash
type: function
doc:
<comment>Description:</comment>
  Argon2 アルゴリズムを使い、パスワードからキーを導出する
  
  この関数は、 libsodium の crypto_pwhash 派生関数への低レベルのアクセスを提供します。 この関数を使
  う明確な理由がなければ、 <strong>sodium_crypto_pwhash_str()</strong> や <strong>password_hash()</strong> 関数を代わりに使うべきで
  す。
  
  この関数を使う共通の理由は、 パスワードとソルトから暗号化キーのためのシードを導出し、 その値を使う
  ことで、特定の目的 (たとえば、<strong>sodium_crypto_sign_detached()</strong>) で使う実際の鍵を生成することです。

<comment>Param:</comment>
  <info>int</info>     <strong>$length</strong>    生成するパスワードハッシュの長さ。 バイト単位で指定します。
  <info>string</info>  <strong>$password</strong>  ハッシュを生成するパスワードを文字列で指定します。
  <info>string</info>  <strong>$salt</strong>      ハッシュ化する前に、 パスワードに追加するソルト値。 この値は予測されてはいけま
                     せん。 <strong>random_bytes()</strong> のような良質な乱数のソースから生成されることが理想です。
                     そして、少なくとも長さが <info>SODIUM_CRYPTO_PWHASH_SALTBYTES</info>  バイトである必要があり
                     ます。
  <info>int</info>     <strong>$opslimit</strong>  実際に行う計算処理の最大量。 この値を大きくすると、 キーを計算するのに必要な
                     CPUサイクルが増加します。 意図した使い方次第で、 適切な値の上限値を設定するため
                     に、いくつかの定数が存在します。 弱いものから強いものへと並べると、以下のとおり
                     です: <info>SODIUM_CRYPTO_PWHASH_OPSLIMIT_INTERACTIVE</info>,
                     <info>SODIUM_CRYPTO_PWHASH_OPSLIMIT_MODERATE</info>, <info>SODIUM_CRYPTO_PWHASH_OPSLIMIT_SENSITIVE</info>
  <info>int</info>     <strong>$memlimit</strong>  この関数が使用するメモリの最大値をバイト単位で指定します。 適切な値を選ぶため
                     に、ヘルパとなる定数が存在します。 サイズの順に、以下の通りです:
                     <info>SODIUM_CRYPTO_PWHASH_MEMLIMIT_INTERACTIVE</info>,
                     <info>SODIUM_CRYPTO_PWHASH_MEMLIMIT_MODERATE</info>, <info>SODIUM_CRYPTO_PWHASH_MEMLIMIT_SENSITIVE</info>
                     これらの値は、<strong>$opslimit</strong>  と一致するものとペアになるべきです。
  <info>int</info>     <strong>$algo</strong>      使用するハッシュアルゴリズムのIDを指定します。 デフォルトは、
                     <info>SODIUM_CRYPTO_PWHASH_ALG_DEFAULT</info> (現状推奨されるアルゴリズム。 これは、
                     libsodium のバージョンによって変更されるかもしれません) です。 または、
                     Argon2id アルゴリズム version 1.3 を表す <info>SODIUM_CRYPTO_PWHASH_ALG_ARGON2ID13</info> を
                     明示的に使うこともできます。

<comment>Return:</comment>
  <info>string</info>  導出されたキーを返します。 返される値は、ハッシュのバイナリ文字列であり、 ASCII でエンコー
          ドされた文字列ではありませんし、 ハッシュを生成するために使われた追加のパラメータも含まれ
          ていません。 よって、将来パスワードを検証するためには、 それらの情報を保持しておく必要があ
          ります。 そうなることを避けるために、 <strong>sodium_crypto_pwhash_str()</strong> を使って下さい。


id: sodium_crypto_pwhash_scryptsalsa208sha256
type: function
doc:
<comment>Description:</comment>
  scrypt を使い、パスワードからキーを導出する
  
  <strong>sodium_crypto_pwhash()</strong> の scrypt 対応版です。
  
  この特別な関数を使う理由は、 パスワードとソルトから、暗号化キーのシードを導出し、 そのシードを特定
  の目的に必要とされる実際のキー (たとえば <strong>sodium_crypto_sign_detached()</strong> で使う) を生成することで
  す。

<comment>Param:</comment>
  <info>int</info>     <strong>$length</strong>    生成するパスワードハッシュの長さ。 バイト単位で指定します。
  <info>string</info>  <strong>$password</strong>  ハッシュを生成するパスワード
  <info>string</info>  <strong>$salt</strong>      ハッシュ化する前に、 パスワードに追加するソルト値。 この値は予測されてはいけま
                     せん。 <strong>random_bytes()</strong> のような良質な乱数のソースから生成されることが理想です。
                     そして、少なくとも長さが <info>SODIUM_CRYPTO_PWHASH_SCRYPTSALSA208SHA256_SALTBYTES</info> バ
                     イトである必要があります。
  <info>int</info>     <strong>$opslimit</strong>  実際に行う計算処理の最大量。 この値を大きくすると、 キーを計算するのに必要な
                     CPUサイクルが増加します。 意図した使い方次第で、 適切な値の上限値を設定するため
                     に、いくつかの定数が存在します。 弱いものから強いものへと並べると、以下のとおり
                     です: <info>SODIUM_CRYPTO_PWHASH_SCRYPTSALSA208SHA256_OPSLIMIT_INTERACTIVE</info> と
                     <info>SODIUM_CRYPTO_PWHASH_SCRYPTSALSA208SHA256_OPSLIMIT_SENSITIVE</info> です。
  <info>int</info>     <strong>$memlimit</strong>  この関数が使用するメモリの最大値をバイト単位で指定します。 適切な値を選ぶため
                     に、ヘルパとなる定数が存在します。 サイズの順に、以下の通りです:
                     <info>SODIUM_CRYPTO_PWHASH_SCRYPTSALSA208SHA256_MEMLIMIT_INTERACTIVE</info> と
                     <info>SODIUM_CRYPTO_PWHASH_SCRYPTSALSA208SHA256_MEMLIMIT_SENSITIVE</info> があります。 これ
                     らの値は、<strong>$opslimit</strong>  と一致するものとペアになるべきです。

<comment>Return:</comment>
  <info>string</info>  指定された長さのバイト列を文字列として返します。


id: sodium_crypto_pwhash_scryptsalsa208sha256_str
type: function
doc:
<comment>Description:</comment>
  ASCII 文字列でエンコードされたハッシュを得る
  
  この関数は、
  現在のところ詳細な情報はありません。引数のリストのみが
  記述されています。

<comment>Param:</comment>
  <info>string</info>  <strong>$password</strong>  
  <info>int</info>     <strong>$opslimit</strong>  
  <info>int</info>     <strong>$memlimit</strong>  

<comment>Return:</comment>
  <info>string</info>  


id: sodium_crypto_pwhash_scryptsalsa208sha256_str_verify
type: function
doc:
<comment>Description:</comment>
  パスワードが、有効なパスワード検証文字列かを調べる
  
  この関数は、
  現在のところ詳細な情報はありません。引数のリストのみが
  記述されています。

<comment>Param:</comment>
  <info>string</info>  <strong>$hash</strong>      
  <info>string</info>  <strong>$password</strong>  

<comment>Return:</comment>
  <info>bool</info>  


id: sodium_crypto_pwhash_str
type: function
doc:
<comment>Description:</comment>
  ASCII 文字でエンコードされたハッシュ値を得る
  
  ランダムに生成されたソルト値と、 CPU とメモリへの攻撃に強いハッシュアルゴリズムを使い、 指定された
  メモリとCPUの使用量の最大値に基づき、 パスワードの保存に適した ASCII 文字でエンコードされたハッ
  シュを生成します。

<comment>Param:</comment>
  <info>string</info>  <strong>$password</strong>  ハッシュを生成するパスワードを文字列で指定します。
  <info>int</info>     <strong>$opslimit</strong>  実際に行う計算処理の最大量。 この値を大きくすると、 キーを計算するのに必要な
                     CPUサイクルが増加します。 意図した使い方次第で、 適切な値の上限値を設定するため
                     に、いくつかの定数が存在します。 弱いものから強いものへと並べると、以下のとおり
                     です: <info>SODIUM_CRYPTO_PWHASH_OPSLIMIT_INTERACTIVE</info>,
                     <info>SODIUM_CRYPTO_PWHASH_OPSLIMIT_MODERATE</info>, <info>SODIUM_CRYPTO_PWHASH_OPSLIMIT_SENSITIVE</info>
                     です。
  <info>int</info>     <strong>$memlimit</strong>  この関数が使用するメモリの最大値をバイト単位で指定します。 適切な値を選ぶため
                     に、ヘルパとなる定数が存在します。 サイズの順に、以下の通りです:
                     <info>SODIUM_CRYPTO_PWHASH_MEMLIMIT_INTERACTIVE</info>,
                     <info>SODIUM_CRYPTO_PWHASH_MEMLIMIT_MODERATE</info>, <info>SODIUM_CRYPTO_PWHASH_MEMLIMIT_SENSITIVE</info>
                     があります。 これらの値は、<strong>$opslimit</strong>  と一致するものとペアになるべきです。

<comment>Return:</comment>
  <info>string</info>  ハッシュ化されたパスワードを返します。
          
          同じパスワードから同じパスワードハッシュを生成するには、 <strong>$opslimit</strong> と <strong>$memlimit</strong> の値を同じ
          にしなければいけません。 これらは生成されたハッシュに埋め込まれているので、 ハッシュを検証
          する際に必要な全てが含まれています。 これによって、 <strong>sodium_crypto_pwhash_str_verify()</strong> 関数
          が、他の引数に関する情報を追加で保存せずにハッシュを検証できるのです。

<comment>See Also:</comment>
   * <strong>sodium_crypto_pwhash_str_verify()</strong>
   * <strong>sodium_crypto_pwhash()</strong>
   * <strong>password_hash()</strong>
   * <strong>password_verify()</strong>
   * Libsodium Argon2 docs


id: sodium_crypto_pwhash_str_needs_rehash
type: function
doc:
<comment>Description:</comment>
  パスワードを再計算する必要があるかを判定する
  
  現在の <strong>$opslimit</strong> 値と <strong>$memlimit</strong> 値から、 パスワードを再計算する必要があるかを判定します。

<comment>Param:</comment>
  <info>string</info>  <strong>$password</strong>  パスワードハッシュ
  <info>int</info>     <strong>$opslimit</strong>  設定済みの opslimit。 <strong>sodium_crypto_pwhash_str()</strong> を参照ください。
  <info>int</info>     <strong>$memlimit</strong>  設定済みの memlimit。 <strong>sodium_crypto_pwhash_str()</strong> を参照ください。

<comment>Return:</comment>
  <info>bool</info>  設定された memlimit/opslimit が、 保存されたハッシュ値にマッチしない場合、<info>true</info> を返します。
        マッチする場合、<info>false</info> を返します。


id: sodium_crypto_pwhash_str_verify
type: function
doc:
<comment>Description:</comment>
  パスワードが、ハッシュ値と一致するかを調べる
  
  <strong>sodium_crypto_pwhash_str()</strong> を使って生成されたパスワードハッシュが、 指定されたプレーンテキストのパ
  スワードとマッチするかを調べます。 この関数と似た <strong>password_verify()</strong>  に指定する同じ引数と、順番が
  逆であることに注意して下さい。

<comment>Param:</comment>
  <info>string</info>  <strong>$hash</strong>      <strong>password_hash()</strong> が作ったハッシュ。
  <info>string</info>  <strong>$password</strong>  ユーザーのパスワード。

<comment>Return:</comment>
  <info>bool</info>  パスワードとハッシュ値がマッチする場合 <info>true</info> を返します。 そうでない場合、<info>false</info> を返します。

<comment>See Also:</comment>
   * <strong>sodium_crypto_pwhash_str()</strong>
   * <strong>password_hash()</strong>
   * <strong>password_verify()</strong>


id: sodium_crypto_scalarmult
type: function
doc:
<comment>Description:</comment>
  ユーザーの秘密鍵と、別のユーザーの公開鍵を使って、共有シークレットを計算する
  
  ディフィー・ヘルマン楕円曲線上で座標pをn回掛け算します。

<comment>Param:</comment>
  <info>string</info>  <strong>$n</strong>  スカラー値。 これは通常は秘密鍵です。
  <info>string</info>  <strong>$p</strong>  座標 (X軸上)。 これは通常は公開鍵です。

<comment>Return:</comment>
  <info>string</info>  32バイト長のランダムな文字列を返します。


id: sodium_crypto_scalarmult_base
type: function
doc:
<comment>Description:</comment>
  sodium_crypto_box_publickey_from_secretkey のエイリアス
  
  この関数は次の関数のエイリアスです。 <strong>sodium_crypto_box_publickey_from_secretkey()</strong>.


id: sodium_crypto_scalarmult_ristretto255
type: function
doc:
<comment>Description:</comment>
  共有シークレットを計算する
  
  座標 <strong>$p</strong> の <strong>$n</strong> 倍にあたるスカラー値を計算します。 libsodium 1.0.18 以降で利用可能です。
  
  この関数は、
  現在のところ詳細な情報はありません。引数のリストのみが
  記述されています。

<comment>Param:</comment>
  <info>string</info>  <strong>$n</strong>  スカラー値。 通常は秘密鍵の値です。
  <info>string</info>  <strong>$p</strong>  座標の値(x座標)。 通常は公開鍵の値です。

<comment>Return:</comment>
  <info>string</info>  32バイト長のランダムな文字列を返します。

<comment>See Also:</comment>
   * <strong>sodium_crypto_scalarmult_ristretto255_base()</strong>


id: sodium_crypto_scalarmult_ristretto255_base
type: function
doc:
<comment>Description:</comment>
  秘密鍵から公開鍵を計算する
  
  秘密鍵を指定すると、それに対応する公開鍵を計算します。 libsodium 1.0.18 以降で利用可能です。
  
  この関数は、
  現在のところ詳細な情報はありません。引数のリストのみが
  記述されています。

<comment>Param:</comment>
  <info>string</info>  <strong>$n</strong>  秘密鍵。

<comment>Return:</comment>
  <info>string</info>  32バイト長のランダムな文字列を返します。

<comment>See Also:</comment>
   * <strong>sodium_crypto_scalarmult_ristretto255()</strong>


id: sodium_crypto_secretbox
type: function
doc:
<comment>Description:</comment>
  認証付きの共有鍵による暗号化
  
  対称(共有)鍵を使い、メッセージを暗号化します。

<comment>Param:</comment>
  <info>string</info>  <strong>$message</strong>  暗号化するプレーンテキスト
  <info>string</info>  <strong>$nonce</strong>    メッセージごとに一度だけ使われる数値。 長さは24バイトです。 これは、 (たとえば、
                    <strong>random_bytes()</strong>を使って) ランダムな値を生成するのに十分大きな長さです。
  <info>string</info>  <strong>$key</strong>      暗号化キー(256ビット)

<comment>Return:</comment>
  <info>string</info>  暗号化された文字列を返します。

<comment>See Also:</comment>
   * <strong>sodium_crypto_secretbox_open()</strong>
   * <strong>sodium_crypto_secretbox_keygen()</strong>
   * <strong>random_bytes()</strong>


id: sodium_crypto_secretbox_keygen
type: function
doc:
<comment>Description:</comment>
  sodium_crypto_secretbox で使うランダムな鍵を生成する
  
  <strong>sodium_crypto_secretbox()</strong> と <strong>sodium_crypto_secretbox_open()</strong> で使うための鍵を生成します。

<comment>Return:</comment>
  <info>string</info>  暗号学的にセキュアな、ランダムなバイト列を生成し、文字列で返します。

<comment>See Also:</comment>
   * <strong>sodium_bin2hex()</strong>
   * <strong>random_bytes()</strong>


id: sodium_crypto_secretbox_open
type: function
doc:
<comment>Description:</comment>
  認証付きの共有鍵による復号
  
  対称(共有)鍵を使い、暗号化されたメッセージを復号します。

<comment>Param:</comment>
  <info>string</info>  <strong>$ciphertext</strong>  <strong>sodium_crypto_secretbox()</strong> が生成したフォーマットでなければいけません。 (暗号
                       化されたテキスト、タグを連結したもの)
  <info>string</info>  <strong>$nonce</strong>       メッセージごとに一度だけ使われる数値。 長さは24バイトです。 これは、 (たとえ
                       ば、<strong>random_bytes()</strong>を使って) ランダムな値を生成するのに十分大きな長さです。
  <info>string</info>  <strong>$key</strong>         暗号化キー(256ビット)

<comment>Return:</comment>
  <info>string|false</info>  成功時には、復号した文字列を返します。 失敗した場合に <info>false</info> を返します.

<comment>See Also:</comment>
   * <strong>sodium_crypto_secretbox()</strong>
   * <strong>sodium_crypto_secretbox_keygen()</strong>
   * <strong>random_bytes()</strong>


id: sodium_crypto_secretstream_xchacha20poly1305_init_pull
type: function
doc:
<comment>Description:</comment>
  復号のためのシークレットストリームのコンテキストを初期化する
  
  復号のためのシークレットストリームのコンテキストを初期化します。

<comment>Param:</comment>
  <info>string</info>  <strong>$header</strong>  シークレットストリームのヘッダ。 これは、
                   <strong>sodium_crypto_secretstream_xchacha20poly1305_init_push()</strong> が生成する値のうちの一つ
                   を指定しなければいけません。
  <info>string</info>  <strong>$key</strong>     暗号化キー(256ビット)

<comment>Return:</comment>
  <info>string</info>  シークレットストリームのステートを返します。


id: sodium_crypto_secretstream_xchacha20poly1305_init_push
type: function
doc:
<comment>Description:</comment>
  暗号化のために、シークレットストリームのコンテキストを初期化する
  
  暗号化のために、シークレットストリームのコンテキストを初期化します。

<comment>Param:</comment>
  <info>string</info>  <strong>$key</strong>  暗号化キー。 <strong>sodium_crypto_secretstream_xchacha20poly1305_keygen()</strong> を参照ください。

<comment>Return:</comment>
  <info>array</info>  ふたつの文字列からなる配列を返します。


id: sodium_crypto_secretstream_xchacha20poly1305_keygen
type: function
doc:
<comment>Description:</comment>
  ランダムなシークレットストリームのキーを生成する
  
  ランダムなシークレットストリームのキーを生成します。

<comment>Return:</comment>
  <info>string</info>  ランダムなバイト列からなる文字列を返します。


id: sodium_crypto_secretstream_xchacha20poly1305_pull
type: function
doc:
<comment>Description:</comment>
  暗号化されたストリームから、データのチャンクを複号する
  
  暗号化されたストリームから、データのチャンクを複号します。

<comment>Param:</comment>
  <info>string</info>  <strong>$state</strong>            <strong>sodium_crypto_secretstream_xchacha20poly1305_init_pull()</strong> と
                            <strong>sodium_crypto_secretstream_xchacha20poly1305_init_push()</strong> を参照くださ
                            い。
  <info>string</info>  <strong>$ciphertext</strong>       復号する、暗号化されたテキスト。
  <info>string</info>  <strong>$additional_data</strong>  認証タグを含んだ、 オプションの追加データ

<comment>Return:</comment>
  <info>array|false</info>  2つの値を含んだ配列を返します。  復号したチャンクの文字列。  (push時に提供された場合)
               オプションのタグ。 あり得る値は、以下のとおりです:
               <info>SODIUM_CRYPTO_SECRETSTREAM_XCHACHA20POLY1305_TAG_MESSAGE</info>: もっとも一般的なタグ。 メッ
               セージの性質についての情報を全く追加しません。
               <info>SODIUM_CRYPTO_SECRETSTREAM_XCHACHA20POLY1305_TAG_FINAL</info>: メッセージがストリームの終端
               を示しており、 これより前のシーケンスで使われていた暗号化の鍵が削除されています。
               <info>SODIUM_CRYPTO_SECRETSTREAM_XCHACHA20POLY1305_TAG_PUSH</info>: このメッセージが、メッセージの
               集合の終端としてマークされていますが、 ストリームの終端ではありません。 たとえば、複
               数のチャンクとして送信された巨大なJSON文字列は、 アプリケーションに文字列の終端を示
               し、 デコードできると指示することができます。 しかし、ストリームそのものは閉じられて
               おらず、 さらにデータが続く可能性があります。
               <info>SODIUM_CRYPTO_SECRETSTREAM_XCHACHA20POLY1305_TAG_REKEY</info>: このメッセージを暗号化するた
               めに、 これまでに使われてきた鍵を"忘れ"ます。 そして、新しい秘密鍵を生成します。
               
               復号したチャンクの文字列。
               
               (push時に提供された場合) オプションのタグ。 あり得る値は、以下のとおりです:
               <info>SODIUM_CRYPTO_SECRETSTREAM_XCHACHA20POLY1305_TAG_MESSAGE</info>: もっとも一般的なタグ。 メッ
               セージの性質についての情報を全く追加しません。
               <info>SODIUM_CRYPTO_SECRETSTREAM_XCHACHA20POLY1305_TAG_FINAL</info>: メッセージがストリームの終端
               を示しており、 これより前のシーケンスで使われていた暗号化の鍵が削除されています。
               <info>SODIUM_CRYPTO_SECRETSTREAM_XCHACHA20POLY1305_TAG_PUSH</info>: このメッセージが、メッセージの
               集合の終端としてマークされていますが、 ストリームの終端ではありません。 たとえば、複
               数のチャンクとして送信された巨大なJSON文字列は、 アプリケーションに文字列の終端を示
               し、 デコードできると指示することができます。 しかし、ストリームそのものは閉じられて
               おらず、 さらにデータが続く可能性があります。
               <info>SODIUM_CRYPTO_SECRETSTREAM_XCHACHA20POLY1305_TAG_REKEY</info>: このメッセージを暗号化するた
               めに、 これまでに使われてきた鍵を"忘れ"ます。 そして、新しい秘密鍵を生成します。


id: sodium_crypto_secretstream_xchacha20poly1305_push
type: function
doc:
<comment>Description:</comment>
  ストリーミングAPI で安全に復号できるように、データのチャンクを暗号化する
  
  ストリーミングAPIで安全に復号できるように、 データのチャンクを暗号化します。

<comment>Param:</comment>
  <info>string</info>  <strong>$state</strong>            <strong>sodium_crypto_secretstream_xchacha20poly1305_init_pull()</strong> と
                            <strong>sodium_crypto_secretstream_xchacha20poly1305_init_push()</strong> を参照くださ
                            い。
  <info>string</info>  <strong>$message</strong>          
  <info>string</info>  <strong>$additional_data</strong>  
  <info>int</info>     <strong>$tag</strong>              オプション。 復号の振る舞いを指示するために使えます。 (たとえば、鍵の再
                            生成や、ストリームの最後のチャンクを示すなど)

<comment>Return:</comment>
  <info>string</info>  暗号化されたテキストを返します。


id: sodium_crypto_secretstream_xchacha20poly1305_rekey
type: function
doc:
<comment>Description:</comment>
  シークレットストリームのステート中で、鍵を入れ替える
  
  シークレットストリームのステート中で、鍵を明示的に入れ替えます。 渡された値は上書きされます。

<comment>Param:</comment>
  <info>string</info>  <strong>$state</strong>  シークレットストリームのステート

<comment>Return:</comment>
  <info>void</info>  値を返しません。


id: sodium_crypto_shorthash
type: function
doc:
<comment>Description:</comment>
  メッセージと鍵のための短いハッシュ値を計算する
  
  <strong>sodium_crypto_shorthash()</strong> は、SipHash-2-4 と呼ばれるハッシュ関数をラップします。 このハッシュ関数
  は、ハッシュの衝突によるサービス拒否攻撃 (Hash-DoS) から影響を受けにくい ハッシュテーブルを実装す
  るのに理想的なものです。
  
  SipHash-2-4 自体は、 一般的な用途の暗号で使うハッシュ関数ではありません。

<comment>Param:</comment>
  <info>string</info>  <strong>$message</strong>  ハッシュ化するメッセージ
  <info>string</info>  <strong>$key</strong>      ハッシュキー

<comment>Return:</comment>
  <info>string</info>  


id: sodium_crypto_shorthash_keygen
type: function
doc:
<comment>Description:</comment>
  鍵のためのランダムなバイト値を得る
  
  <strong>sodium_crypto_shorthash()</strong> で使うための鍵を生成します。
  
  この関数は、
  現在のところ詳細な情報はありません。引数のリストのみが
  記述されています。

<comment>Return:</comment>
  <info>string</info>  


id: sodium_crypto_sign
type: function
doc:
<comment>Description:</comment>
  メッセージに署名する
  
  秘密鍵を用いてメッセージに署名します。 これは、秘密鍵に対応する公開鍵で検証することができます。 こ
  の関数は、メッセージに署名を付加します。 メッセージとは別に署名を持つ方法については、
  <strong>sodium_crypto_sign_detached()</strong> を参照ください。

<comment>Param:</comment>
  <info>string</info>  <strong>$message</strong>     署名するメッセージ
  <info>string</info>  <strong>$secret_key</strong>  秘密鍵。 <strong>sodium_crypto_sign_secretkey()</strong> を参照ください。

<comment>Return:</comment>
  <info>string</info>  署名済みのメッセージ(暗号化されていません) を返します。


id: sodium_crypto_sign_detached
type: function
doc:
<comment>Description:</comment>
  メッセージに署名する
  
  秘密鍵を使って署名します。 この署名は、対応する公開鍵で検証できます。 この関数は、メッセージとは別
  の署名を返します。

<comment>Param:</comment>
  <info>string</info>  <strong>$message</strong>     署名するメッセージ
  <info>string</info>  <strong>$secret_key</strong>  秘密鍵。 <strong>sodium_crypto_sign_secretkey()</strong> を参照ください。

<comment>Return:</comment>
  <info>string</info>  署名を返します。


id: sodium_crypto_sign_ed25519_pk_to_curve25519
type: function
doc:
<comment>Description:</comment>
  Ed25519 公開鍵を、Curve25519 公開鍵に変換する
  
  指定された Ed25519 形式の公開鍵から、 双有理同値な X25519 形式の公開鍵を計算します。

<comment>Param:</comment>
  <info>string</info>  <strong>$public_key</strong>  crypto_sign 関数に適合する公開鍵

<comment>Return:</comment>
  <info>string</info>  crypto_box 関数に適合する公開鍵を返します。


id: sodium_crypto_sign_ed25519_sk_to_curve25519
type: function
doc:
<comment>Description:</comment>
  Ed25519 秘密鍵を、Curve25519 秘密鍵に変換する
  
  指定された Ed25519 形式の秘密鍵から、 双有理同値な X25519 形式の秘密鍵を計算します。

<comment>Param:</comment>
  <info>string</info>  <strong>$secret_key</strong>  crypto_sign 関数に適合する秘密鍵

<comment>Return:</comment>
  <info>string</info>  crypto_box 関数に適合する秘密鍵を返します。


id: sodium_crypto_sign_keypair
type: function
doc:
<comment>Description:</comment>
  秘密鍵と、対応する公開鍵をランダムに生成する
  
  ランダムな Ed25519 形式の鍵ペアをひとつの文字列として生成します。

<comment>Return:</comment>
  <info>string</info>  Ed25519 形式の鍵ペアを返します。


id: sodium_crypto_sign_keypair_from_secretkey_and_publickey
type: function
doc:
<comment>Description:</comment>
  秘密鍵と公開鍵を結合する
  
  秘密鍵と公開鍵を結合します。

<comment>Param:</comment>
  <info>string</info>  <strong>$secret_key</strong>  Ed25519 形式の秘密鍵
  <info>string</info>  <strong>$public_key</strong>  Ed25519 形式の公開鍵

<comment>Return:</comment>
  <info>string</info>  鍵ペアを返します。


id: sodium_crypto_sign_open
type: function
doc:
<comment>Description:</comment>
  署名済みのメッセージが、有効な署名を持っているかを調べる
  
  メッセージに付加された署名を検証し、メッセージを返します。

<comment>Param:</comment>
  <info>string</info>  <strong>$signed_message</strong>  <strong>sodium_crypto_sign()</strong> を使って署名されたメッセージ
  <info>string</info>  <strong>$public_key</strong>      Ed25519 形式の公開鍵

<comment>Return:</comment>
  <info>string|false</info>  成功時には、オリジナルの署名済みメッセージを返します。 失敗した場合に <info>false</info> を返しま
                す


id: sodium_crypto_sign_publickey
type: function
doc:
<comment>Description:</comment>
  鍵ペアから、Ed25519 形式の公開鍵を取り出す
  
  鍵ペアから、Ed25519 形式の公開鍵を取り出します。

<comment>Param:</comment>
  <info>string</info>  <strong>$key_pair</strong>  Ed25519 形式の鍵ペア (<strong>sodium_crypto_sign_keypair()</strong> を参照ください)

<comment>Return:</comment>
  <info>string</info>  Ed25519 形式の公開鍵を返します。


id: sodium_crypto_sign_publickey_from_secretkey
type: function
doc:
<comment>Description:</comment>
  秘密鍵から、Ed25519 形式の公開鍵を取り出す
  
  秘密鍵から、Ed25519 形式の公開鍵を取り出します。

<comment>Param:</comment>
  <info>string</info>  <strong>$secret_key</strong>  Ed25519 形式の秘密鍵

<comment>Return:</comment>
  <info>string</info>  Ed25519 形式の公開鍵を返します。


id: sodium_crypto_sign_secretkey
type: function
doc:
<comment>Description:</comment>
  鍵ペアから、Ed25519 形式の秘密鍵を取り出す
  
  鍵ペアから、Ed25519 形式の秘密鍵を取り出します。

<comment>Param:</comment>
  <info>string</info>  <strong>$key_pair</strong>  Ed25519 形式の鍵ペア (<strong>sodium_crypto_sign_keypair()</strong> を参照ください)

<comment>Return:</comment>
  <info>string</info>  Ed25519 形式の秘密鍵を返します。


id: sodium_crypto_sign_seed_keypair
type: function
doc:
<comment>Description:</comment>
  単一の鍵から、結果がひとつに定まる鍵ペアを派生させる
  
  秘密鍵を生成するためのシードを介して、 公開鍵を派生させ、秘密鍵と公開鍵のふたつを鍵ペアとして返し
  ます。
  
  <return>*_seed_keypair</return> 関数はパスワードとソルトから鍵ペアを生成することと同じです。 <strong>$seed</strong> としての結果を、
  鍵を生成するために使います。

<comment>Param:</comment>
  <info>string</info>  <strong>$seed</strong>  暗号の処理をした入力。 長さは32バイトでなければなりません。

<comment>Return:</comment>
  <info>string</info>  鍵ペア(秘密鍵と公開鍵)を返します。


id: sodium_crypto_sign_verify_detached
type: function
doc:
<comment>Description:</comment>
  メッセージの署名を検証する
  
  メッセージの署名を検証します。

<comment>Param:</comment>
  <info>string</info>  <strong>$signature</strong>   <strong>sodium_crypto_sign_detached()</strong> から取得した署名
  <info>string</info>  <strong>$message</strong>     検証するメッセージ
  <info>string</info>  <strong>$public_key</strong>  Ed25519 形式の公開鍵

<comment>Return:</comment>
  <info>bool</info>  成功した場合に <info>true</info> を、失敗した場合に <info>false</info> を返します。


id: sodium_crypto_stream
type: function
doc:
<comment>Description:</comment>
  シードから、結果がひとつに定まるバイト列を生成する
  
  シードから、結果がひとつに定まるバイト列を生成します。 XSalsa20 ストリーム暗号を用います。

<comment>Param:</comment>
  <info>int</info>     <strong>$length</strong>  長さをバイト単位で指定します。
  <info>string</info>  <strong>$nonce</strong>   メッセージごとに一度だけ使われる数値。 長さは24バイトです。 これは、 (たとえば、
                   <strong>random_bytes()</strong>を使って)  ランダムな値を生成するのに十分大きな長さです。
  <info>string</info>  <strong>$key</strong>     暗号化キー(256ビット)

<comment>Return:</comment>
  <info>string</info>  擬似ランダムなバイト列を文字列として返します。


id: sodium_crypto_stream_keygen
type: function
doc:
<comment>Description:</comment>
  sodium_crypto_stream で用いる、ランダムな鍵を生成する
  
  <strong>sodium_crypto_stream()</strong> や <strong>sodium_crypto_stream_xor()</strong> で用いる鍵を生成します。

<comment>Return:</comment>
  <info>string</info>  256ビット長の暗号化キーを返します。


id: sodium_crypto_stream_xchacha20
type: function
doc:
<comment>Description:</comment>
  秘密鍵と nonce を、疑似ランダムなバイト列の鍵ストリームに展開する
  
  <strong>$key</strong> と <strong>$nonce</strong> を 疑似ランダムなバイト列の鍵ストリームに展開します。

<comment>Param:</comment>
  <info>int</info>     <strong>$length</strong>  バイト列の長さ。
  <info>string</info>  <strong>$nonce</strong>   24バイト長の nonce。
  <info>string</info>  <strong>$key</strong>     秘密鍵。 <strong>sodium_crypto_stream_xchacha20_keygen()</strong> によって生成されたものです。

<comment>Return:</comment>
  <info>string</info>  <strong>sodium_crypto_stream_xchacha20_xor()</strong> で使う、疑似ランダムなバイト列のストリームを返しま
          す。


id: sodium_crypto_stream_xchacha20_keygen
type: function
doc:
<comment>Description:</comment>
  ランダムな暗号化キーを生成する
  
  <strong>sodium_crypto_stream_xchacha20()</strong> で使うランダムな鍵を生成して返します。

<comment>Return:</comment>
  <info>string</info>  <strong>sodium_crypto_stream_xchacha20()</strong> で使う、 32バイト長のランダムな暗号化キーを返します。


id: sodium_crypto_stream_xchacha20_xor
type: function
doc:
<comment>Description:</comment>
  nonce と秘密鍵を使ってメッセージを暗号化する(認証なし)
  
  <strong>$nonce</strong> と 秘密鍵 <strong>$key</strong> を使って <strong>$message</strong> を暗号化します(認証はありません)
  
  この暗号化処理は認証を行いませんし、 選択暗号文攻撃(chosen-ciphertext attack) を防ぐことができませ
  ん。 必ず暗号化されたテキストを認証コードと組み合わせるようにして下さい。 たとえば、
  <strong>sodium_crypto_aead_xchacha20poly1305_ietf_encrypt()</strong> や <strong>sodium_crypto_auth()</strong> を使うことが考えられま
  す。

<comment>Param:</comment>
  <info>string</info>  <strong>$message</strong>  暗号化するメッセージ。
  <info>string</info>  <strong>$nonce</strong>    24バイトの nonce。
  <info>string</info>  <strong>$key</strong>      暗号化キー。 <strong>sodium_crypto_stream_xchacha20_keygen()</strong> で生成されたものです。

<comment>Return:</comment>
  <info>string</info>  暗号化されたメッセージを返します。

<comment>See Also:</comment>
   * <strong>sodium_crypto_stream_xchacha20_xor_ic()</strong>


id: sodium_crypto_stream_xchacha20_xor_ic
type: function
doc:
<comment>Description:</comment>
  nonce と秘密鍵を使ってメッセージを暗号化する(認証なし)
  
  この関数は、<strong>sodium_crypto_stream_xchacha20_xor()</strong> に似ていますが、ブロックカウンタの初期値を非ゼロ
  の値に設定する機能が追加されています。 これによって、以前の値を計算せずに直接任意のブロックにアク
  セスすることができます。
  
  この暗号化処理は認証を行いませんし、 選択暗号文攻撃(chosen-ciphertext attack) を防ぐことができませ
  ん。 必ず暗号化されたテキストを認証コードと組み合わせるようにして下さい。 たとえば、
  <strong>sodium_crypto_aead_xchacha20poly1305_ietf_encrypt()</strong> や <strong>sodium_crypto_auth()</strong> を使うことが考えられま
  す。

<comment>Param:</comment>
  <info>string</info>  <strong>$message</strong>  暗号化するメッセージ。
  <info>string</info>  <strong>$nonce</strong>    24バイトの nonce。
  <info>int</info>     <strong>$counter</strong>  ブロックカウンタの初期値。
  <info>string</info>  <strong>$key</strong>      暗号化キー。 <strong>sodium_crypto_stream_xchacha20_keygen()</strong> で生成されたものです。

<comment>Return:</comment>
  <info>string</info>  暗号化されたメッセージを返します。 失敗した場合に <info>false</info> を返します

<comment>See Also:</comment>
   * <strong>sodium_crypto_stream_xchacha20_xor()</strong>


id: sodium_crypto_stream_xor
type: function
doc:
<comment>Description:</comment>
  認証を行わずにメッセージを暗号化する
  
  この関数は XSalsa20 を用いて暗号化を行いますが、 プレーンテキストについて、 いかなる暗号学的な保証
  も行いません。

<comment>Param:</comment>
  <info>string</info>  <strong>$message</strong>  暗号化するメッセージ
  <info>string</info>  <strong>$nonce</strong>    メッセージごとに一度だけ使われる数値。 長さは24バイトです。 これは、 (たとえば、
                    <strong>random_bytes()</strong>を使って)  ランダムな値を生成するのに十分大きな長さです。
  <info>string</info>  <strong>$key</strong>      暗号化キー(256ビット)

<comment>Return:</comment>
  <info>string</info>  暗号化されたメッセージを返します。


id: sodium_hex2bin
type: function
doc:
<comment>Description:</comment>
  16進エンコードされたバイナリ文字列をデコードする
  
  16進エンコードされたバイナリ文字列をデコードします。
  
  <strong>sodium_bin2hex()</strong> と同じく、 <strong>sodium_hex2bin()</strong> 関数はサイドチャネル攻撃に対する耐性がありますが、
  <strong>hex2bin()</strong> はそうではありません。

<comment>Param:</comment>
  <info>string</info>  <strong>$string</strong>  データの16進表現。
  <info>string</info>  <strong>$ignore</strong>  オプションで指定する、無視する文字

<comment>Return:</comment>
  <info>string</info>  指定された <strong>$string</strong> のバイナリ表現を返します。


id: sodium_increment
type: function
doc:
<comment>Description:</comment>
  巨大な数をインクリメントする
  
  文字列をリトルエンディアンで表現した符号なし整数として扱い、 その値をインクリメントします。定数時
  間で動作します。

<comment>Param:</comment>
  <info>string</info>  <strong>$string</strong>  インクリメントする文字列。

<comment>Return:</comment>
  <info>void</info>  値を返しません。


id: sodium_memcmp
type: function
doc:
<comment>Description:</comment>
  定数時間での文字列の比較
  
  ふたつの文字列を、定数時間で比較します。
  
  実際、ほとんどの場合は <strong>hash_equals()</strong> を使いたいかもしれません。 なぜなら、同じロジックを提供してい
  るにもかかわらず、 整数型ではなく、<info>bool</info> を返すからです。 しかしながら、タイミング攻撃に敏感な比較
  計算の結果を扱う場合、 かつ、bool値から整数型への変換の際の、 タイミングに依存した情報のリークを気
  にする場合、 <strong>sodium_memcmp()</strong> 関数が理想的な代替になります。

<comment>Param:</comment>
  <info>string</info>  <strong>$string1</strong>  比較対象の文字列
  <info>string</info>  <strong>$string2</strong>  もう一つの、比較する文字列

<comment>Return:</comment>
  <info>int</info>  双方の文字列が等しければ <return>0</return> を返します。 等しくない場合 <return>-1</return> を返します。


id: sodium_memzero
type: function
doc:
<comment>Description:</comment>
  文字列をNUL文字で上書きする
  
  <strong>sodium_memzero()</strong> は、 リファレンス渡しされた文字列をゼロ埋めします。

<comment>Param:</comment>
  <info>string</info>  <strong>$string</strong>  文字列

<comment>Return:</comment>
  <info>void</info>  値を返しません。


id: sodium_pad
type: function
doc:
<comment>Description:</comment>
  パディングデータを追加する
  
  文字列の右側に、任意の長さのパディングを追加します。 タイミング攻撃に対しても安全です。

<comment>Param:</comment>
  <info>string</info>  <strong>$string</strong>      パディングされていない文字列。
  <info>int</info>     <strong>$block_size</strong>  ここで指定されたブロックサイズの偶数倍になるまで、 文字列にパディングが追加さ
                       れます。

<comment>Return:</comment>
  <info>string</info>  パディングが追加された文字列。


id: sodium_unpad
type: function
doc:
<comment>Description:</comment>
  パディングを削除する
  
  パディングされた文字列から、パディングを削除します。 タイミング攻撃に対しても安全です。

<comment>Param:</comment>
  <info>string</info>  <strong>$string</strong>      パディングされた文字列。
  <info>int</info>     <strong>$block_size</strong>  パディングのブロックサイズ

<comment>Return:</comment>
  <info>string</info>  パディングが削除された文字列を返します。


id: solr_get_version
type: function
doc:
<comment>Description:</comment>
  Apache Solr 拡張モジュールの現行バージョンを返す
  
  この関数は、拡張モジュールの現行バージョンを文字列として返します。

<comment>Return:</comment>
  <info>string</info>  成功時に文字列、失敗時に <info>false</info> を返します。

<comment>See Also:</comment>
   * <strong>SolrUtils::getSolrVersion()</strong>


id: sort
type: function
doc:
<comment>Description:</comment>
  配列を昇順にソートする
  
  <strong>$array</strong> を値で昇順にソートします。
  
  比較結果が等しくなる二つの要素があった場合、それらの並び順は保持されます。PHP 8.0.0 より前のバー
  ジョンでは、ソートした配列におけるそれらの並び順は不定でした。
  
  この関数は、
  <strong>$array</strong> パラメータの要素に対して新しいキーを割り当てます。
  その際、単純にキーを並べ替える代わりに、
  すでに割り当てられている既存のキーを削除してしまいます。
  
  この関数をコールすると、配列の内部ポインタは最初の要素にリセットされます。

<comment>Param:</comment>
  <info>array</info>  <strong>$array</strong>  入力の配列。
  <info>int</info>    <strong>$flags</strong>  オプションの第二引数 <strong>$flags</strong> によりソートの動作を修正可能です。 使える値は下記の通り
                 です:
                 
                 ソートタイプのフラグ: <info>SORT_REGULAR</info> - 通常通りに項目を比較します。 詳細は 比較演算子
                 で説明されています。<info>SORT_NUMERIC</info> - 数値として項目を比較します。<info>SORT_STRING</info> - 文字列
                 として項目を比較します。<info>SORT_LOCALE_STRING</info> - 現在のロケールに基づいて、文字列として
                 項目を比較します。 比較に使うロケールは、<strong>setlocale()</strong> 関数で変更できます。
                 <info>SORT_NATURAL</info> - 要素の比較を文字列として行い、  <strong>natsort()</strong> と同様の「自然順」で比較し
                 ます。 <info>SORT_FLAG_CASE</info> - <info>SORT_STRING</info> や <info>SORT_NATURAL</info> と (ビットORで) 組み合わせて使
                 い、 文字列のソートで大文字小文字を区別しないようにします。
                 
                 <info>SORT_REGULAR</info> - 通常通りに項目を比較します。 詳細は 比較演算子 で説明されています。
                 
                 <info>SORT_NUMERIC</info> - 数値として項目を比較します。
                 
                 <info>SORT_STRING</info> - 文字列として項目を比較します。
                 
                 <info>SORT_LOCALE_STRING</info> - 現在のロケールに基づいて、文字列として項目を比較します。 比較
                 に使うロケールは、<strong>setlocale()</strong> 関数で変更できます。
                 
                 <info>SORT_NATURAL</info> - 要素の比較を文字列として行い、  <strong>natsort()</strong> と同様の「自然順」で比較し
                 ます。
                 
                 <info>SORT_FLAG_CASE</info> - <info>SORT_STRING</info> や <info>SORT_NATURAL</info> と (ビットORで) 組み合わせて使い、 文
                 字列のソートで大文字小文字を区別しないようにします。

<comment>Return:</comment>
  <info>true</info>  常に <info>true</info> を返します。

<comment>See Also:</comment>
   * <strong>rsort()</strong>
   * 配列ソート関数の比較


id: soundex
type: function
doc:
<comment>Description:</comment>
  文字列の soundex キーを計算する
  
  <strong>$string</strong> の soundex キーを計算します。
  
  soundex キーには、似たような発音の単語に関して同じ soundex キーが生成されるという特性があります。
  このため、発音は知っているが、スペルがわからない場合に、 データベースを検索することを容易にするこ
  とができます。
  
  この soundex 関数についての説明は、Donald Knuth の "The Art Of Computer Programming, vol. 3:
  Sorting And Searching", Addison-Wesley (1973), pp. 391-392 にあります。

<comment>Param:</comment>
  <info>string</info>  <strong>$string</strong>  入力文字列。

<comment>Return:</comment>
  <info>string</info>  soundex キーを、4文字からなる文字列で返します。 少なくとも1文字が <strong>$string</strong> に含まれていた場
          合、 返される文字列はその文字から始まります。 そうでない場合、<return>"0000"</return> を返します。

<comment>See Also:</comment>
   * <strong>levenshtein()</strong>
   * <strong>metaphone()</strong>
   * <strong>similar_text()</strong>


id: spl_autoload
type: function
doc:
<comment>Description:</comment>
  __autoload() のデフォルト実装
  
  この関数は、<strong>__autoload()</strong> のデフォルト実装として使用されることを意図しています。 ほかに何も指定され
  ておらず、<strong>autoload_register()</strong> がパラメータなしでコールされた場合には、 その後の <strong>__autoload()</strong> の
  コール時にはこの関数が使用されます。

<comment>Param:</comment>
  <info>string</info>       <strong>$class</strong>            インスタンスを作成するクラス名 (および名前空間名)。
  <info>string|null</info>  <strong>$file_extensions</strong>  デフォルトでは、クラス名を小文字にして .inc および .php を拡張子に
                                 つけたファイル名のファイルが存在するかどうかを すべてのインクルード
                                 パスから探します。

<comment>Return:</comment>
  <info>void</info>  値を返しません。


id: spl_autoload_call
type: function
doc:
<comment>Description:</comment>
  要求されたクラスを読み込むために、すべての登録済みの __autoload() 関数を試す
  
  この関数は、登録済みの __autoload 関数を使用して クラスあるいはインターフェイスを手動で探すために
  使用することができます。

<comment>Param:</comment>
  <info>string</info>  <strong>$class</strong>  探したいクラス名。

<comment>Return:</comment>
  <info>void</info>  値を返しません。


id: spl_autoload_extensions
type: function
doc:
<comment>Description:</comment>
  spl_autoload 用のデフォルトの拡張子を登録し、それを返す
  
  この関数は、<strong>__autoload()</strong> 用の代替関数である <strong>spl_autoload()</strong> が使用するファイル拡張子を変更したり調
  べたりします。
  
  ファイルの拡張子の間にスペースを入れるべきではありません。

<comment>Param:</comment>
  <info>string|null</info>  <strong>$file_extensions</strong>  <info>null</info> を指定した場合、現在の拡張子一覧をカンマ区切りで返します。
                                 ファイル拡張子を変更するには、 新しい拡張子一覧をカンマ区切り文字列
                                 で表したものを引数に指定して、 この関数を実行します。

<comment>Return:</comment>
  <info>string</info>  <strong>spl_autoload()</strong> のデフォルト拡張子の一覧をカンマ区切り形式で返します。


id: spl_autoload_functions
type: function
doc:
<comment>Description:</comment>
  すべての登録済み __autoload() 関数を返す
  
  すべての登録済み __autoload() 関数を取得します。

<comment>Return:</comment>
  <info>array</info>  関数が何も登録されていなかったり、 autoload キューが有効になっていない場合は、 空の配列が返
         されます。


id: spl_autoload_register
type: function
doc:
<comment>Description:</comment>
  指定した関数を __autoload() の実装として登録する
  
  指定した関数を、spl が提供する __autoload キューに登録します。 キューがまだアクティブになっていな
  い場合は、まずアクティブにします。
  
  もしあなたのコード中に <strong>__autoload()</strong> 関数が存在するのなら、 それを明示的に __autoload キューに登録
  しなければなりません。 なぜなら、<strong>spl_autoload_register()</strong> は、 <strong>spl_autoload()</strong> あるいは
  <strong>spl_autoload_call()</strong> によって <strong>__autoload()</strong> 関数のエンジンキャッシュを効率的に置き換えるからです。
  
  複数の autoload 関数が必要となる場合でも <strong>spl_autoload_register()</strong> は対応できます。この関数は
  autoload 関数のキューを作成し、 定義された順にそれを実行していきます。一方 <strong>__autoload()</strong> は、一度し
  か定義できません。

<comment>Param:</comment>
  <info>callable|null</info>  <strong>$callback</strong>  登録したい autoload 関数。 <info>null</info> を指定した場合、デフォルト実装である
                            <strong>spl_autoload()</strong> が登録されます。
                            
                            <strong>$class</strong> には、完全修飾子を示す、先頭のバックスラッシュが付くことはありま
                            せん。
  <info>bool</info>           <strong>$throw</strong>     このパラメータは、 <strong>spl_autoload_register()</strong> が <strong>$callback</strong> を登録できなかっ
                            たときに例外をスローするかどうかを指定します。
                            
                            このパラメータは、PHP 8.0.0 以降は無視されます。 かつ、<info>false</info> を設定する
                            と警告が発生します。 <strong>spl_autoload_register()</strong> は、 引数が不正な場合常に
                            <class>TypeError</class> をスローするようになっています。
  <info>bool</info>           <strong>$prepend</strong>   true の場合、<strong>spl_autoload_register()</strong> はキューの最後に追加するのではなく
                            先頭に追加します。

<comment>Return:</comment>
  <info>bool</info>  成功した場合に <info>true</info> を、失敗した場合に <info>false</info> を返します。

<comment>See Also:</comment>
   * <strong>__autoload()</strong>


id: spl_autoload_unregister
type: function
doc:
<comment>Description:</comment>
  指定した関数の、__autoload() の実装としての登録を解除する
  
  spl が提供する __autoload キューから、関数を削除します。 キューがアクティブであり、かつこの関数の
  削除後にキューが空になった場合は キューが非アクティブ化されます。
  
  この関数の結果として autoload キューが非アクティブになったとした場合に、 既存の __autoload 関数が
  再アクティブ化されることはありません。

<comment>Param:</comment>
  <info>callable</info>  <strong>$callback</strong>  登録を解除したい autoload 関数。

<comment>Return:</comment>
  <info>bool</info>  成功した場合に <info>true</info> を、失敗した場合に <info>false</info> を返します。


id: spl_classes
type: function
doc:
<comment>Description:</comment>
  利用可能な SPL クラスを返す
  
  この関数は現在利用可能な SPL クラスを配列で返します。

<comment>Return:</comment>
  <info>array</info>  現在利用可能な SPL クラスを配列で返します。


id: spl_object_hash
type: function
doc:
<comment>Description:</comment>
  指定したオブジェクトのハッシュ ID を返す
    
  
  この関数は、オブジェクトの一意な識別子を返します。この ID は、 オブジェクトを保存する際のハッシュ
  のキーとして使えます。 また、オブジェクトが破棄されるまでは、オブジェクトを識別するための値として
  も使えます。 オブジェクトが破棄されると、そのハッシュが他のオブジェクトで再利用されてしまうことが
  あります。 この振る舞いは、<strong>spl_object_id()</strong> に似ています。

<comment>Param:</comment>
  <info>object</info>  <strong>$object</strong>  何らかのオブジェクト。

<comment>Return:</comment>
  <info>string</info>  現在存在する各オブジェクトに固有で、同一オブジェクトに対しては常に同じ値となる文字列を返し
          ます。

<comment>See Also:</comment>
   * <strong>spl_object_id()</strong>


id: spl_object_id
type: function
doc:
<comment>Description:</comment>
  与えられたオブジェクトを扱う数値オブジェクトを返す
    
  
  この関数は、オブジェクトのユニークな識別子を返します。 このオブジェクトidはオブジェクトが生きてい
  る間ユニークです。 オブジェクトがいったん破棄されると、そのidは他のオブジェクトによって再利用され
  ます。 この振る舞いは、<strong>spl_object_hash()</strong> と似ています。

<comment>Param:</comment>
  <info>object</info>  <strong>$object</strong>  任意のオブジェクト

<comment>Return:</comment>
  <info>int</info>  現在存在しているそれぞれのオブジェクトの間でユニークで、 かつそれぞれのオブジェクト毎に常に同
       じ数値の識別子を返します。


id: sprintf
type: function
doc:
<comment>Description:</comment>
  フォーマットされた文字列を返す
  
  フォーマット文字列 <strong>$format</strong> に基づき生成された文字列を返します。

<comment>Param:</comment>
  <info>string</info>  <strong>$format</strong>  0個以上のディレクティブで構成されるフォーマット文字列:
                    変換結果に直接コピーされる通常文字列 (<return>%</return> は除きます) と、変換仕様。 これらのいず
                   れも、自分が持つパラメータを取得します。
                   
                   変換の仕様は、以下のプロトタイプに従います:
                   <return>%[argnum$][flags][width][.precision]specifier</return>.
                   
                   何番目の引数を変換の対象にするかを指定するために、 数値の後にドル記号 <return>$</return> を続けま
                   す。
                   
                   フラグ一覧フラグ説明<return>-</return> 与えられたフィールドの幅を左寄せにします。 右寄せがデフォル
                   トです。 <return>+</return> 正の数値の前に付ける <return>+</return> 符号です; デフォルトは、負の数にだけマイナスの
                   符号が数値の前に付きます。 <return> </return>(space) スペースに変換される詰め物です。 これがデフォ
                   ルトです。 <return>0</return> 数値の左側を0埋めします。 <return>s</return> 指定子を使うと、 右側にも0埋めできます。
                   <return>'</return>(char) 指定された (char) で埋めます。
                   
                   (最小で)何文字がこの変換結果に含まれるかを数値で指定するか、 <return>*</return> を指定します。 <return>*</return>
                   を指定した場合、 指定子によってフォーマットされる値の前に、 幅を追加の数値として
                   指定します。
                   
                   ピリオド <return>.</return> の後に数値を続けるか、 <return>*</return> を続けますが、 その意味は指定子に依存します:
                   <return>e</return>, <return>E</return>, <return>f</return> と <return>F</return> 指定子の場合: 小数点の後に表示する桁数 (デフォルトでは、この値は6で
                   す) <return>g</return>, <return>G</return>, <return>h</return>, <return>H</return> 指定子の場合: 表示する最大の有効桁数 <return>s</return> 指定子の場合: 文字列を切り
                   捨てる時点、つまり、文字列の最大の長さを設定します。   明示的に精度を指定せず、ピ
                   リオドを指定した場合、精度は0として扱われます。 <return>*</return> を使った場合、 精度は指定子に
                   よってフォーマットされる値の前に、 追加の数値として指定します。
                   
                   <return>e</return>, <return>E</return>, <return>f</return> と <return>F</return> 指定子の場合: 小数点の後に表示する桁数 (デフォルトでは、この値は6で
                   す)
                   
                   <return>g</return>, <return>G</return>, <return>h</return>, <return>H</return> 指定子の場合: 表示する最大の有効桁数
                   
                   <return>s</return> 指定子の場合: 文字列を切り捨てる時点、つまり、文字列の最大の長さを設定します。
                   
                   明示的に精度を指定せず、ピリオドを指定した場合、精度は0として扱われます。 <return>*</return> を
                   使った場合、 精度は指定子によってフォーマットされる値の前に、 追加の数値として指
                   定します。
                   
                   指定子の一覧指定子説明<return>%</return> 文字通り、パーセント文字です。 引数は不要です。 <return>b</return> 引数は
                   整数として扱われ、バイナリ値として表現されます。 <return>c</return> 引数は整数として扱われ、
                   ASCII文字として表現されます。 <return>d</return> 引数は整数として扱われ、(符号付き)10進数値として
                   表現されます。 <return>e</return> 引数は科学的記法で表現された値(e.g. 1.2e+2)として扱われます。 <return>E</return><return>e</return>
                   指定子に似ていますが、 大文字を使います(e.g. 1.2E+2) <return>f</return> 引数は小数として扱われ、浮
                   動小数点数値として表現されます(ロケールを考慮します)。 <return>F</return> 引数は小数として扱われ、
                   浮動小数点数値として表現されます(ロケールを考慮しません)。 <return>g</return> 汎用フォーマット  P
                   を精度を表す、ゼロでない値とします。 精度が省略された場合、Pの値は6です。 精度に
                   0を指定した場合、Pの値は1になります。 この場合、 <return>E</return> 指定子の変換結果は、 X乗になり
                   ます。  P &gt; X ≥ −4 の場合、<return>E</return> 指定子の変換結果となり、精度は、P − (X + 1) にな
                   ります。 そうでない場合、<return>e</return> 指定子の変換結果となり、 精度は、P - 1 になります。 <return>G</return><return>g</return>
                   指定子に似ていますが、 <return>E</return> と <return>f</return> を使います。 <return>h</return><return>g</return> 指定子に似ていますが、 <return>F</return> を使いま
                   す。 PHP 8.0.0 以降で利用可能です。 <return>H</return><return>g</return> 指定子に似ていますが、 <return>E</return> と <return>F</return> を使います。
                   PHP 8.0.0 以降で利用可能です。 <return>o</return> 引数は整数として扱われ、8進数値として表現されま
                   す。 <return>s</return> 引数は文字列として扱われ、文字列として表現されます。 <return>u</return> 引数は整数として扱
                   われ、符号なし10進数値として表現されます。 <return>x</return> 引数は整数として扱われ、16進数値(小
                   文字)として表現されます。 <return>X</return> 引数は整数として扱われ、16進数値(大文字)として表現さ
                   れます。
                   
                   汎用フォーマット
                   
                   P を精度を表す、ゼロでない値とします。 精度が省略された場合、Pの値は6です。 精度
                   に0を指定した場合、Pの値は1になります。 この場合、 <return>E</return> 指定子の変換結果は、 X乗にな
                   ります。
                   
                   P &gt; X ≥ −4 の場合、<return>E</return> 指定子の変換結果となり、精度は、P − (X + 1) になります。
                   そうでない場合、<return>e</return> 指定子の変換結果となり、 精度は、P - 1 になります。
                   
                   <return>c</return> 指定子はパディングと幅を無視します
                   
                   文字列と width 指定子を、1文字の表現に1バイト以上必要な文字セットと一緒に使おうと
                   すると、 期待しない結果になるかもしれません。
                   
                   値は、指定子の型に合うように強制されます: 型のハンドリング型指定子<info>string</info><return>s</return><info>int</info><return>d</return>, <return>u</return>,
                   <return>c</return>, <return>o</return>, <return>x</return>, <return>X</return>, <return>b</return><info>float</info><return>e</return>, <return>E</return>, <return>f</return>, <return>F</return>, <return>g</return>, <return>G</return>, <return>h</return>, <return>H</return>
  <info>mixed</info>   <strong>$values</strong>  

<comment>Return:</comment>
  <info>string</info>  フォーマット文字列 <strong>$format</strong> に基づき生成された文字列を返します。

<comment>See Also:</comment>
   * <strong>printf()</strong>
   * <strong>fprintf()</strong>
   * <strong>vprintf()</strong>
   * <strong>vsprintf()</strong>
   * <strong>vfprintf()</strong>
   * <strong>sscanf()</strong>
   * <strong>fscanf()</strong>
   * <strong>number_format()</strong>
   * <strong>date()</strong>


id: sqlsrv_begin_transaction
type: function
doc:
<comment>Description:</comment>
  Begins a database transaction
  
  The transaction begun by <strong>sqlsrv_begin_transaction()</strong> includes  all statements that were executed
  after the call to  <strong>sqlsrv_begin_transaction()</strong> and before calls to  <strong>sqlsrv_rollback()</strong> or
  <strong>sqlsrv_commit()</strong>.  Explicit transactions should be started and committed or rolled back using
  these functions instead of executing SQL statements that begin and commit/roll  back transactions.
  For more information, see  SQLSRV Transactions.

<comment>Param:</comment>
  <info>resource</info>  <strong>$conn</strong>  The connection resource returned by a call to <strong>sqlsrv_connect()</strong>.

<comment>Return:</comment>
  <info>bool</info>  成功した場合に <info>true</info> を、失敗した場合に <info>false</info> を返します。

<comment>See Also:</comment>
   * <strong>sqlsrv_commit()</strong>
   * <strong>sqlsrv_rollback()</strong>


id: sqlsrv_cancel
type: function
doc:
<comment>Description:</comment>
  Cancels a statement
  
  Cancels a statement. Any results associated with the statement that have not  been consumed are
  deleted. After <strong>sqlsrv_cancel()</strong> has been  called, the specified statement can be re-executed if it
  was created with  <strong>sqlsrv_prepare()</strong>. Calling <strong>sqlsrv_cancel()</strong>  is not necessary if all the results
  associated with the statement have been  consumed.

<comment>Param:</comment>
  <info>resource</info>  <strong>$stmt</strong>  The statement resource to be cancelled.

<comment>Return:</comment>
  <info>bool</info>  成功した場合に <info>true</info> を、失敗した場合に <info>false</info> を返します。

<comment>See Also:</comment>
   * <strong>sqlsrv_free_stmt()</strong>
   * <strong>sqlsrv_prepare()</strong>


id: sqlsrv_client_info
type: function
doc:
<comment>Description:</comment>
  Returns information about the client and specified connection
  
  Returns information about the client and specified connection

<comment>Param:</comment>
  <info>resource</info>  <strong>$conn</strong>  The connection about which information is returned.

<comment>Return:</comment>
  <info>array</info>  Returns an associative array with keys described in the table below.  Returns <info>false</info>
         otherwise.  Array returned by
         sqlsrv_client_infoKeyDescriptionDriverDllNameSQLNCLI10.DLLDriverODBCVerODBC version
         (xx.yy)DriverVerSQL Server Native Client DLL version (10.5.xxx)ExtensionVerphp_sqlsrv.dll
         version (2.0.xxx.x)

<comment>See Also:</comment>
   * <strong>sqlsrv_server_info()</strong>


id: sqlsrv_close
type: function
doc:
<comment>Description:</comment>
  Closes an open connection and releases resourses associated with the connection
  
  Closes an open connection and releases resourses associated with the connection.

<comment>Param:</comment>
  <info>resource</info>  <strong>$conn</strong>  The connection to be closed.

<comment>Return:</comment>
  <info>bool</info>  成功した場合に <info>true</info> を、失敗した場合に <info>false</info> を返します。

<comment>See Also:</comment>
   * <strong>sqlsrv_connect()</strong>


id: sqlsrv_commit
type: function
doc:
<comment>Description:</comment>
  Commits a transaction that was begun with sqlsrv_begin_transaction
  
  Commits a transaction that was begun with <strong>sqlsrv_begin_transaction()</strong>.  The connection is returned
  to auto-commit mode after <strong>sqlsrv_commit()</strong>  is called. The transaction that is committed includes
  all statements that were  executed after the call to <strong>sqlsrv_begin_transaction()</strong>.  Explicit
  transactions should be started and committed or rolled back using these  functions instead of
  executing SQL statements that begin and commit/roll back  transactions. For more information, see
  SQLSRV Transactions.

<comment>Param:</comment>
  <info>resource</info>  <strong>$conn</strong>  The connection on which the transaction is to be committed.

<comment>Return:</comment>
  <info>bool</info>  成功した場合に <info>true</info> を、失敗した場合に <info>false</info> を返します。

<comment>See Also:</comment>
   * <strong>sqlsrv_begin_transaction()</strong>
   * <strong>sqlsrv_rollback()</strong>


id: sqlsrv_configure
type: function
doc:
<comment>Description:</comment>
  Changes the driver error handling and logging configurations
  
  Changes the driver error handling and logging configurations.

<comment>Param:</comment>
  <info>string</info>  <strong>$setting</strong>  The name of the setting to set. The possible values are
                    "WarningsReturnAsErrors", "LogSubsystems", and "LogSeverity".
  <info>mixed</info>   <strong>$value</strong>    The value of the specified setting. The following table shows possible values:
                    Error and Logging Setting OptionsSettingOptionsWarningsReturnAsErrors1 (<info>true</info>) or
                    0 (<info>false</info>)LogSubsystemsSQLSRV_LOG_SYSTEM_ALL (-1)  SQLSRV_LOG_SYSTEM_CONN (2)
                    SQLSRV_LOG_SYSTEM_INIT (1)  SQLSRV_LOG_SYSTEM_OFF (0)  SQLSRV_LOG_SYSTEM_STMT
                    (4)  SQLSRV_LOG_SYSTEM_UTIL (8)LogSeveritySQLSRV_LOG_SEVERITY_ALL (-1)
                    SQLSRV_LOG_SEVERITY_ERROR (1)  SQLSRV_LOG_SEVERITY_NOTICE (4)
                    SQLSRV_LOG_SEVERITY_WARNING (2)

<comment>Return:</comment>
  <info>bool</info>  成功した場合に <info>true</info> を、失敗した場合に <info>false</info> を返します。

<comment>See Also:</comment>
   * SQLSRV Error Handling.
   * Logging SQLSRV Activity.


id: sqlsrv_connect
type: function
doc:
<comment>Description:</comment>
  Opens a connection to a Microsoft SQL Server database
  
  Opens a connection to a Microsoft SQL Server database. By default, the connection  is attempted
  using Windows Authentication. To connect using SQL Server  Authentication, include "UID" and "PWD"
  in the connection options array.

<comment>Param:</comment>
  <info>string</info>  <strong>$serverName</strong>      The name of the server to which a connection is established. To connect
                           to a specific instance, follow the server name with a backward slash  and
                           the instance name (e.g. serverName\sqlexpress).
  <info>array</info>   <strong>$connectionInfo</strong>  An associative array that specifies options for connecting to the server.
                           If values for the UID and PWD keys are not specified, the connection
                           will be attempted using Windows Authentication. For a complete list of
                           supported  keys, see SQLSRV Connection Options.

<comment>Return:</comment>
  <info>resource</info>  A connection resource. If a connection cannot be successfully opened, <info>false</info> is returned.

<comment>See Also:</comment>
   * <strong>sqlsrv_close()</strong>
   * <strong>sqlsrv_errors()</strong>
   * <strong>sqlsrv_query()</strong>


id: sqlsrv_errors
type: function
doc:
<comment>Description:</comment>
  Returns error and warning information about the last SQLSRV operation performed
  
  Returns error and warning information about the last SQLSRV operation performed.

<comment>Param:</comment>
  <info>int</info>  <strong>$errorsOrWarnings</strong>  Determines whether error information, warning information, or both are
                          returned. If this parameter is not supplied, both error information and
                          warning information are returned. The following are the supported values
                          for this parameter: SQLSRV_ERR_ALL, SQLSRV_ERR_ERRORS,
                          SQLSRV_ERR_WARNINGS.

<comment>Return:</comment>
  <info>mixed</info>  If errors and/or warnings occurred on the last sqlsrv operation, an array of  arrays
         containing error information is returned. If no errors and/or warnings  occurred on the
         last sqlsrv operation, <info>null</info> is returned. The following table  describes the structure of
         the returned arrays: Array returned by sqlsrv_errorsKeyDescriptionSQLSTATEFor errors that
         originate from the ODBC driver, the SQLSTATE returned  by ODBC. For errors that originate
         from the Microsoft Drivers for PHP for  SQL Server, a SQLSTATE of IMSSP. For warnings that
         originate from the  Microsoft Drivers for PHP for SQL Server, a SQLSTATE of 01SSP. codeFor
         errors that originate from SQL Server, the native SQL Server  error code. For errors that
         originate from the ODBC driver, the error  code returned by ODBC. For errors that originate
         from the Microsoft Drivers  for PHP for SQL Server, the Microsoft Drivers for PHP for SQL
         Server error code. messageA description of the error.

<comment>See Also:</comment>
   * <strong>sqlsrv_configure()</strong>


id: sqlsrv_execute
type: function
doc:
<comment>Description:</comment>
  Executes a statement prepared with sqlsrv_prepare
  
  Executes a statement prepared with <strong>sqlsrv_prepare()</strong>. This  function is ideal for executing a
  prepared statement multiple times with  different parameter values.

<comment>Param:</comment>
  <info>resource</info>  <strong>$stmt</strong>  A statement resource returned by <strong>sqlsrv_prepare()</strong>.

<comment>Return:</comment>
  <info>bool</info>  成功した場合に <info>true</info> を、失敗した場合に <info>false</info> を返します。

<comment>See Also:</comment>
   * <strong>sqlsrv_prepare()</strong>
   * <strong>sqlsrv_query()</strong>


id: sqlsrv_fetch
type: function
doc:
<comment>Description:</comment>
  Makes the next row in a result set available for reading
  
  Makes the next row in a result set available for reading. Use  <strong>sqlsrv_get_field()</strong> to read the
  fields of the row.

<comment>Param:</comment>
  <info>resource</info>  <strong>$stmt</strong>    A statement resource created by executing <strong>sqlsrv_query()</strong>  or <strong>sqlsrv_execute()</strong>.
  <info>int</info>       <strong>$row</strong>     The row to be accessed. This parameter can only be used if the specified
                     statement was prepared with a scrollable cursor. In that case, this parameter
                     can take on one of the following values:
                     SQLSRV_SCROLL_NEXTSQLSRV_SCROLL_PRIORSQLSRV_SCROLL_FIRSTSQLSRV_SCROLL_LASTSQLSRV_SCROLL_ABSOLUTESQLSRV_SCROLL_RELATIVE
  <info>int</info>       <strong>$offset</strong>  Specifies the row to be accessed if the row parameter is set to
                     <info>SQLSRV_SCROLL_ABSOLUTE</info> or <info>SQLSRV_SCROLL_RELATIVE</info>. Note that the first row in a
                     result set has index 0.

<comment>Return:</comment>
  <info>mixed</info>  Returns <info>true</info> if the next row of a result set was successfully retrieved,  <info>false</info> if an error
         occurs, and <info>null</info> if there are no more rows in the result set.

<comment>See Also:</comment>
   * <strong>sqlsrv_get_field()</strong>
   * <strong>sqlsrv_fetch_array()</strong>
   * <strong>sqlsrv_fetch_object()</strong>


id: sqlsrv_fetch_array
type: function
doc:
<comment>Description:</comment>
  行を配列として返す
  
  クエリ結果から列データを順に返します。列データの型は連想配列、配列、またはその両方(デフォルト)を選
  択できます。

<comment>Param:</comment>
  <info>resource</info>  <strong>$stmt</strong>       sqlsrv_query あるいは sqlsrv_prepare が返すステートメントリソース。
  <info>int</info>       <strong>$fetchType</strong>  戻り値の型を指定します。連想配列<info>SQLSRV_FETCH_ASSOC</info>,  配列
                        <info>SQLSRV_FETCH_NUMERIC</info>, and  連想配列と配列の両方<info>SQLSRV_FETCH_BOTH</info> (デフォル
                        ト) のうち1つを指定します。
                        
                        SQLSRV_FETCH_ASSOC(連想配列)は同じ名前の列が複数存在する結果セットを扱う際に
                        使ってはいけません(連想配列のキーが重複するため)。
  <info>int</info>       <strong>$row</strong>        スクロール可能なカーソルを用いた結果セットから、取得する列を指定します。 定
                        義済み定数は、 <info>SQLSRV_SCROLL_NEXT</info>(次の列),  <info>SQLSRV_SCROLL_PRIOR</info>(前の列),
                        <info>SQLSRV_SCROLL_FIRST</info>(最初の列),  <info>SQLSRV_SCROLL_LAST</info>(最後の列),
                        <info>SQLSRV_SCROLL_ABSOLUTE</info>(列番号の絶対指定) and,  <info>SQLSRV_SCROLL_RELATIVE</info>(列番号
                        の相対指定) (デフォルト値).  この引数を指定する場合は、<strong>$fetchType</strong> を指定しな
                        くてはなりません。
  <info>int</info>       <strong>$offset</strong>     引数rowに <info>SQLSRV_SCROLL_ABSOLUTE</info> または <info>SQLSRV_SCROLL_RELATIVE</info> を指定する際
                        に、この引数で取得する列を指定します。 列番号は0から始まります。

<comment>Return:</comment>
  <info>array</info>  成功時に配列を返します。 返す列がない場合は<info>null</info> を返します。エラーが起きた場合は  <info>false</info>を返
         します。

<comment>See Also:</comment>
   * <strong>sqlsrv_connect()</strong>
   * <strong>sqlsrv_query()</strong>
   * <strong>sqlsrv_errors()</strong>
   * <strong>sqlsrv_fetch()</strong>


id: sqlsrv_fetch_object
type: function
doc:
<comment>Description:</comment>
  Retrieves the next row of data in a result set as an object
  
  Retrieves the next row of data in a result set as an instance of the specified  class with
  properties that match the row field names and values that correspond  to the row field values.

<comment>Param:</comment>
  <info>resource</info>  <strong>$stmt</strong>        A statement resource created by <strong>sqlsrv_query()</strong> or  <strong>sqlsrv_execute()</strong>.
  <info>string</info>    <strong>$className</strong>   The name of the class to instantiate. If no class name is specified,
                         stdClass is instantiated.
  <info>array</info>     <strong>$ctorParams</strong>  Values passed to the constructor of the specified class. If the constructor
                         of the specified class takes parameters, the ctorParams array must be
                         supplied.
  <info>int</info>       <strong>$row</strong>         The row to be accessed. This parameter can only be used if the specified
                         statement was prepared with a scrollable cursor. In that case, this
                         parameter  can take on one of the following values:
                         SQLSRV_SCROLL_NEXTSQLSRV_SCROLL_PRIORSQLSRV_SCROLL_FIRSTSQLSRV_SCROLL_LASTSQLSRV_SCROLL_ABSOLUTESQLSRV_SCROLL_RELATIVE
  <info>int</info>       <strong>$offset</strong>      Specifies the row to be accessed if the row parameter is set to
                         <info>SQLSRV_SCROLL_ABSOLUTE</info> or <info>SQLSRV_SCROLL_RELATIVE</info>. Note that the first row
                         in a result set has index 0.

<comment>Return:</comment>
  <info>mixed</info>  Returns an object on success, <info>null</info> if there are no more rows to return,  and <info>false</info> if an
         error occurs or if the specified class does not exist.

<comment>See Also:</comment>
   * <strong>sqlsrv_fetch()</strong>
   * <strong>sqlsrv_fetch_array()</strong>


id: sqlsrv_field_metadata
type: function
doc:
<comment>Description:</comment>
  Retrieves metadata for the fields of a statement prepared by 
    sqlsrv_prepare or sqlsrv_query
    
  
  Retrieves metadata for the fields of a statement prepared by  <strong>sqlsrv_prepare()</strong> or <strong>sqlsrv_query()</strong>.
  <strong>sqlsrv_field_metadata()</strong> can be called on a statement before  or after statement execution.

<comment>Param:</comment>
  <info>resource</info>  <strong>$stmt</strong>  The statement resource for which metadata is returned.

<comment>Return:</comment>
  <info>mixed</info>  Returns an array of arrays on success. Otherwise, <info>false</info> is returned.  Each returned array
         is described by the following table: Array returned by
         sqlsrv_field_metadataKeyDescriptionNameThe name of the field.TypeThe numeric value for the
         SQL type.SizeThe number of characters for fields of character type, the number of  bytes
         for fields of binary type, or <info>null</info> for other types.PrecisionThe precision for types of
         variable precision, <info>null</info> for other types.ScaleThe scale for types of variable scale, <info>null</info>
         for other types.NullableAn enumeration indicating whether the column is nullable, not
         nullable,  or if it is not known. For more information, see sqlsrv_field_metadata  in the
         Microsoft SQLSRV documentation.

<comment>See Also:</comment>
   * <strong>sqlsrv_client_info()</strong>


id: sqlsrv_free_stmt
type: function
doc:
<comment>Description:</comment>
  Frees all resources for the specified statement
  
  Frees all resources for the specified statement. The statement cannot be used  after
  <strong>sqlsrv_free_stmt()</strong> has been called on it. If  <strong>sqlsrv_free_stmt()</strong> is called on an in-progress
  statement  that alters server state, statement execution is terminated and the statement  is
  rolled back.

<comment>Param:</comment>
  <info>resource</info>  <strong>$stmt</strong>  The statement for which resources are freed.  Note that <info>null</info> is a valid parameter
                   value. This allows the function to be  called multiple times in a script.

<comment>Return:</comment>
  <info>bool</info>  成功した場合に <info>true</info> を、失敗した場合に <info>false</info> を返します。

<comment>See Also:</comment>
   * <strong>sqlsrv_cancel()</strong>


id: sqlsrv_get_config
type: function
doc:
<comment>Description:</comment>
  Returns the value of the specified configuration setting
  
  Returns the value of the specified configuration setting.

<comment>Param:</comment>
  <info>string</info>  <strong>$setting</strong>  The name of the setting for which the value is returned. For a list of
                    configurable settings, see <strong>sqlsrv_configure()</strong>.

<comment>Return:</comment>
  <info>mixed</info>  Returns the value of the specified setting. If an invalid setting is specified,  <info>false</info> is
         returned.

<comment>See Also:</comment>
   * <strong>sqlsrv_configure()</strong>


id: sqlsrv_get_field
type: function
doc:
<comment>Description:</comment>
  Gets field data from the currently selected row
  
  Gets field data from the currently selected row. Fields must be accessed in  order. Field indices
  start at 0.

<comment>Param:</comment>
  <info>resource</info>  <strong>$stmt</strong>        A statement resource returned by <strong>sqlsrv_query()</strong> or  <strong>sqlsrv_execute()</strong>.
  <info>int</info>       <strong>$fieldIndex</strong>  The index of the field to be retrieved. Field indices start at 0. Fields
                         must be accessed in order. i.e. If you access field index 1, then field
                         index 0 will not be available.
  <info>int</info>       <strong>$getAsType</strong>   The PHP data type for the returned field data. If this parameter is not
                         set, the field data will be returned as its default PHP data type. For
                         information about default PHP data types, see  Default PHP Data Types  in
                         the Microsoft SQLSRV documentation.

<comment>Return:</comment>
  <info>mixed</info>  Returns data from the specified field on success. Returns <info>false</info> otherwise.

<comment>See Also:</comment>
   * <strong>sqlsrv_fetch()</strong>
   * <strong>sqlsrv_fetch_array()</strong>
   * <strong>sqlsrv_fetch_object()</strong>


id: sqlsrv_has_rows
type: function
doc:
<comment>Description:</comment>
  Indicates whether the specified statement has rows
  
  Indicates whether the specified statement has rows.

<comment>Param:</comment>
  <info>resource</info>  <strong>$stmt</strong>  A statement resource returned by <strong>sqlsrv_query()</strong> or  <strong>sqlsrv_execute()</strong>.

<comment>Return:</comment>
  <info>bool</info>  Returns <info>true</info> if the specified statement has rows and <info>false</info> if the statement  does not have
        rows or if an error occurred.

<comment>See Also:</comment>
   * <strong>sqlsrv_num_rows()</strong>
   * <strong>sqlsrv_query()</strong>


id: sqlsrv_next_result
type: function
doc:
<comment>Description:</comment>
  Makes the next result of the specified statement active
  
  Makes the next result of the specified statement active. Results include result  sets, row counts,
  and output parameters.

<comment>Param:</comment>
  <info>resource</info>  <strong>$stmt</strong>  The statement on which the next result is being called.

<comment>Return:</comment>
  <info>mixed</info>  Returns <info>true</info> if the next result was successfully retrieved, <info>false</info> if an error  occurred,
         and <info>null</info> if there are no more results to retrieve.

<comment>See Also:</comment>
   * <strong>sqlsrv_query()</strong>
   * <strong>sqlsrv_fetch_array()</strong>
   * <strong>sqlsrv_rows_affected()</strong>


id: sqlsrv_num_fields
type: function
doc:
<comment>Description:</comment>
  Retrieves the number of fields (columns) on a statement
  
  Retrieves the number of fields (columns) on a statement.

<comment>Param:</comment>
  <info>resource</info>  <strong>$stmt</strong>  The statement for which the number of fields is returned.  <strong>sqlsrv_num_fields()</strong>
                   can be called on a statement before  or after statement execution.

<comment>Return:</comment>
  <info>mixed</info>  Returns the number of fields on success. Returns <info>false</info> otherwise.

<comment>See Also:</comment>
   * <strong>sqlsrv_field_metadata()</strong>
   * <strong>sqlsrv_fetch()</strong>
   * <strong>sqlsrv_get_field()</strong>


id: sqlsrv_num_rows
type: function
doc:
<comment>Description:</comment>
  Retrieves the number of rows in a result set
  
  Retrieves the number of rows in a result set. This function requires that the  statement resource
  be created with a static or keyset cursor. For more information,  see <strong>sqlsrv_query()</strong>,
  <strong>sqlsrv_prepare()</strong>,  or Specifying a Cursor Type and Selecting Rows  in the Microsoft SQLSRV
  documentation.

<comment>Param:</comment>
  <info>resource</info>  <strong>$stmt</strong>  The statement for which the row count is returned. The statement resource  must
                   be created with a static or keyset cursor. For more information, see
                   <strong>sqlsrv_query()</strong>, <strong>sqlsrv_prepare()</strong>, or  Specifying a Cursor Type and Selecting Rows
                   in the Microsoft SQLSRV documentation.

<comment>Return:</comment>
  <info>mixed</info>  Returns the number of rows retrieved on success and <info>false</info> if an error occurred.  If a
         forward cursor (the default) or dynamic cursor is used, <info>false</info> is returned.

<comment>See Also:</comment>
   * <strong>sqlsrv_has_rows()</strong>
   * <strong>sqlsrv_rows_affected()</strong>


