ホームページ >バックエンド開発 >PHPチュートリアル >php extract() 関数は、データ内の変数を php 変数に変換します_PHP チュートリアル
PHP extract() 関数は、変数を配列から現在のシンボル テーブルにインポートします。配列内の各要素について、キー名が変数名として使用され、キー値が変数値として使用されます。 2 番目のパラメーターの種類は、変数がすでに存在し、配列内に同じ名前の要素が存在する場合に、extract() 関数がそのような競合をどのように処理するかを指定するために使用されます。
次のように、PHP 配列から変数をエクスポートし、キー名を変数名として、値を変数値として使用して、グローバル変数として登録します
コードは次のとおりです | コードをコピー |
$vars = array('var1'=>'1','var2'=>'2','var3'=>'3','var4'=>'4','var5'= >'5'); |
$var1、$var2 などの変数名としてキー名を使用してアクセスを実現します
最初のオプション: PHP の組み込みの extract() 関数を使用します。方法は次のとおりです
コードは次のとおりです | コードをコピー |
抽出($vars); |
2番目のオプション: foreachループ配列を使用してグローバル変数として登録する方法は次のとおりです
コードは次のとおりです | コードをコピー |
foreach($vars as $k=>$v){ $GLOBALS[$k] = $v; } |
extract() 関数にはパフォーマンスとセキュリティの問題があるため、2 番目の解決策をお勧めします。
extract() 関数の説明
(PHP 3 >= 3.0.7、PHP 4、PHP 5)
extract -- 変数を配列から現在のシンボルテーブルにインポートします
コードは次のとおりです | コードをコピー |
int extract (array var_array [, int extract_type [, string prefix]] ) |
この関数は、配列から現在のシンボル テーブルに変数をインポートするために使用されます。連想配列 var_array を引数として受け入れ、キー名を変数名として、値を変数値として使用します。キーと値のペアごとに、extract_type パラメーターと prefix パラメーターの影響を受ける変数が現在のシンボル テーブルに作成されます。
参考表
パラメータ | 説明 |
---|---|
配列 | 必須。使用する入力を指定します。 |
抽出ルール |
オプション。 extract() 関数は、各キー名が正当な変数名であるかどうかをチェックし、シンボル テーブル内の変数名と競合するかどうかもチェックします。 不正なキー名、数値名、および競合するキー名の処理は、このパラメータに基づいて決定されます。次のいずれかの値を指定できます: 可能な値:
|
プレフィックス |
オプション。プレフィックスは、extract_type の値が EXTR_PREFIX_SAME、EXTR_PREFIX_ALL、EXTR_PREFIX_INVALID、または EXTR_PREFIX_IF_EXISTS の場合にのみ必要であることに注意してください。プレフィックスを付加した結果が正当な変数名ではない場合、シンボルテーブルにはインポートされません。 接頭辞と配列キー名の間にアンダースコアが自動的に追加されます。 |
すべてのパラメータを使用します:
コードは次のとおりです | コードをコピー |