PHPのextract()関数は、配列のキー値を変数と値に分配するために使用されます。extract関数の詳細な説明です。
extract(array,extract_rules,prefix)
使用する入力を指定します。
extract() 関数は、各キー名が正当な変数名であるかどうかをチェックし、シンボル テーブル内の変数名と競合するかどうかもチェックします。不正なキー名、数値名、および競合するキー名の処理は、このパラメータに基づいて決定されます。次の値のいずれかを指定できます。 可能な値:
EXTR_OVERWRITE - デフォルト。競合がある場合、既存の変数は上書きされます。
EXTR_SKIP - 競合がある場合は、既存の変数を上書きしません。 (配列内の同じ名前の要素は無視します)
EXTR_PREFIX_SAME - 競合がある場合は、変数名の前にプレフィックスを付けます。 PHP 4.0.5 以降、これには数値インデックスの処理も含まれます。
EXTR_PREFIX_ALL - すべての変数名の前に接頭辞を付けます (3 番目のパラメーター)。
EXTR_PREFIX_INVALID - 不正な変数名または数値変数名のみにプレフィックスを付けます。このタグはPHP 4.0.5で新たに追加されました。
EXTR_IF_EXISTS - 現在のシンボル テーブルに既に存在する場合、同じ名前の変数の値のみを上書きします。その他は加工しておりません。これは、一連の正当な変数が定義されており、$_REQUEST などの配列から値を抽出してこれらの変数を上書きする場合に使用できます。このタグはPHP 4.2.0で新たに追加されました。
EXTR_PREFIX_IF_EXISTS - 同じ名前の変数が現在のシンボル テーブルに既に存在する場合にのみ、プレフィックス付きの変数名が作成され、それ以外は何も処理されません。このタグはPHP 4.2.0で新たに追加されました。
EXTR_REFS - 変数を参照として抽出します。これは、インポートされた変数が依然として var_array パラメーターの値を参照していることを強く示しています。このフラグは単独で使用することも、extract_type で OR を使用して他のフラグと組み合わせて使用することもできます。このタグはPHP 4.3.0で新たに追加されました。
プレフィックスは、extract_type の値が EXTR_PREFIX_SAME、EXTR_PREFIX_ALL、EXTR_PREFIX_INVALID、または EXTR_PREFIX_IF_EXISTS の場合にのみ必要であることに注意してください。プレフィックスを付加した結果が正当な変数名ではない場合、シンボルテーブルにはインポートされません。プレフィックスと配列キー名の間にアンダースコアが自動的に追加されます。