キー値「Cat」、「Dog」、「Horse」を変数 $a、$b、$c に割り当てます。
<?php $ a = "オリジナル" ; $ my_array = array ( " a " = > "猫" , " b " = > "犬" , " c " = > "馬" ) ; " $ a = $a ; $ b = $ b ; $ c = $c " ;extract() 関数は、変数を配列から現在のシンボル テーブルにインポートします。
この関数は、配列キー名を変数名として使用し、配列キー値を変数値として使用します。配列内の各要素に対して、対応する変数が現在のシンボル テーブルに作成されます。
この関数は、正常に設定された変数の数を返します。
extract(配列,extract_rules,prefix )
パラメータ | 説明する |
---|---|
配列 | 必須。使用する配列を指定します。 |
抽出ルール | オプション。 extract() 関数は、各キー名が正当な変数名であるかどうかをチェックし、シンボル テーブル内の既存の変数名と競合するかどうかもチェックします。不正なキー名や競合するキー名の処理は、このパラメータに基づいて決定されます。 可能な値: EXTR_OVERWRITE - デフォルト。競合がある場合、既存の変数は上書きされます。 EXTR_SKIP - 競合がある場合、既存の変数を上書きしません。 EXTR_PREFIX_SAME - 競合がある場合は、変数名の前にプレフィックスを付けます。 EXTR_PREFIX_ALL - すべての変数名にプレフィックスを追加します。 EXTR_PREFIX_INVALID - 不正な変数名または数値変数名のみをプレフィックスします。 EXTR_IF_EXISTS - 現在のシンボル テーブルに既に存在する場合にのみ、同じ名前の変数の値を上書きします。その他は加工しておりません。 EXTR_PREFIX_IF_EXISTS - 現在のシンボル テーブルに同じ名前の変数がすでに存在する場合にのみ、プレフィックスを追加した変数名を作成し、それ以外は何も処理されません。 EXTR_REFS - 変数を参照として抽出します。インポートされた変数は引き続き配列パラメーターの値を参照します。 |
接頭辞 | オプション。 extract_rules パラメータの値が EXTR_PREFIX_SAME、EXTR_PREFIX_ALL、EXTR_PREFIX_INVALID、または EXTR_PREFIX_IF_EXISTS の場合、プレフィックスは必須です。 このパラメータはプレフィックスを指定します。プレフィックスと配列キー名の間にアンダースコアが自動的に追加されます。 |
戻り値: | 正常に設定された変数の数を返します。 |
---|---|
PHPのバージョン: | 4+ |
更新ログ: | extract_rules EXTR_REFS の値は、PHP 4.3 の新しい値です。 extract_rules EXTR_IF_EXISTS および EXTR_PREFIX_IF_EXISTS の値は、PHP 4.2 の新しい値です。 PHP 4.0.5 以降、この関数は正常に設定された変数の数を返します。 extract_rules EXTR_PREFIX_INVALID の値は、PHP 4.0.5 の新しい値です。 PHP 4.0.5 以降、 extract_rules EXTR_PREFIX_ALL の値には数値変数も含まれます。 |
すべてのパラメータを使用します。
<?php$a = "オリジナル";$my_array = array("a" => "猫", "b" => "犬", "c" => "馬");extract($my_array, EXTR_PREFIX_SAME, "dup");echo "$a = $a; $b = $b; $c = $c; $dup_a = $dup_a";?>