#extract
関数は、配列から現在のシンボル テーブルに変数をインポートします。
この関数は、配列キー名を変数名として使用し、配列キー値を変数値として使用します。配列内の各要素に対して、対応する変数が現在のシンボル テーブルに作成されます。
2 番目のパラメーターの型は、変数がすでに存在し、配列内に同じ名前の要素が存在する場合に、extract() 関数がそのような競合を処理する方法を指定するために使用されます。
この関数は、シンボル テーブルに正常にインポートされた変数の数を返します。
構文
extract(array,extract_rules,prefix)
array
必須。使用する配列を指定します。
extract_rules
オプション。 extract() 関数は、各キー名が正当な変数名であるかどうかをチェックし、シンボル テーブル内の既存の変数名と競合するかどうかもチェックします。不正なキー名や競合するキー名の処理は、このパラメータに基づいて決定されます。
可能な値:
EXTR_OVERWRITE - デフォルト。競合がある場合、既存の変数は上書きされます。
EXTR_SKIP - 競合がある場合は、既存の変数を上書きしないでください。
EXTR_PREFIX_SAME - 競合がある場合は、変数名の前にプレフィックスを付けます。
EXTR_PREFIX_ALL - すべての変数名にプレフィックスを付けます。
EXTR_PREFIX_INVALID - 不正な変数名または数値変数名のみにプレフィックスを付けます。
EXTR_IF_EXISTS - 現在のシンボル テーブルに既に存在する場合にのみ、同じ名前の変数の値を上書きします。その他は加工しておりません。
EXTR_PREFIX_IF_EXISTS - 現在のシンボル テーブルに同じ名前の変数がすでに存在する場合にのみ、プレフィックス付きの変数名が作成され、それ以外は何も処理されません。
EXTR_REFS - 変数を参照として抽出します。インポートされた変数は引き続き配列パラメーターの値を参照します。
プレフィックス
オプション。プレフィックスは、extract_type の値が EXTR_PREFIX_SAME、EXTR_PREFIX_ALL、EXTR_PREFIX_INVALID、または EXTR_PREFIX_IF_EXISTS の場合にのみ必要であることに注意してください。プレフィックスを付加した結果が正当な変数名ではない場合、シンボルテーブルにはインポートされません。
プレフィックスと配列キー名の間にアンダースコアが自動的に追加されます。
例 1、元の配列の値は変更されず、値が変数 $a、$b、$c、$d、$e
$arr=array('a'=>1,'b'=>2,'c'=>3,'d'=>5,'e'=>6);
extract($arr);
print_r($arr);
print_r($a);
print_r($b);
print_r($c);
print_r($d);
print_r($e);
ログイン後にコピー
出力
に割り当てられます。
Array
(
[a] => 1
[b] => 2
[c] => 3
[d] => 5
[e] => 6
)
1
2
3
5
6
ログイン後にコピー
推奨チュートリアル: 「
PHP ビデオ チュートリアル 」
以上がPHPをベースにしたextractの使い方を詳しく解説の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。