ホームページ > php教程 > php手册 > 配列を複数の変数に分割するための PHP 抽出関数

配列を複数の変数に分割するための PHP 抽出関数

WBOY
リリース: 2016-06-13 12:15:14
オリジナル
951 人が閲覧しました

extract() 関数の構文:
int extract( array $var_array [, int $extract_type = EXTR_OVERWRITE [, string $prefix ]] )
関数: extract() 関数は連想配列を抽出します (数値インデックス配列は無効です) キーと値のペアごとに、キーを変数名として、値を対応する値として使用して、新しい変数の複数のセットが生成されます。

コードをコピー コードは次のとおりです。


$size = "old size"; //注:最終的なサイズ変数の値。
$a = array(
"色" => "赤",
"サイズ" => "XXL",
"価格" => "53"); >extract($a);
echo "color = $color
";
echo "size = $size
"; />";
?>


結果は次のようになります:

色 = 赤
サイズ = XXL
価格 = 53

上記の例を通じて、$size の値が以前の「古いサイズ」ではなく XXL であることがわかりました。これは、デフォルトでは、配列内のキーが既存の変数と競合する場合、元の変数は上書きされます。

抽出関数の最後の 2 つのオプションのパラメーターを続けて紹介します。

2 番目のパラメータ $extract_type は、競合が発生した場合の処理​​方法を制御するために使用されます。 可能な値は次のとおりです:

EXTR_OVERWRITE: 競合が発生した場合に既存の変数を上書きします。デフォルト値。
EXTR_SKIP: 既存の変数を上書きしません。つまり、キーと値のペアの変数を生成しません。
EXTR_PREFIX_SAME: 競合が発生した場合、生成された新しい変数名にプレフィックス文字列が追加され、その値は 3 番目のパラメーターで指定されます。
EXTR_PREFIX_ALL: 生成されたすべての新しい変数名にプレフィックス文字列を追加します。その値は 3 番目のパラメーターで指定されます。
EXTR_PREFIX_INVALID: key の値を変数名に変換することが無効な場合 (たとえば、key の最初の文字が数字であり、変数名では最初の文字を数字にすることができない必要がある)、接頭辞を追加します。変数名に文字列を代入し、その値を第 3 パラメータで指定します。
EXTR_IF_EXISTS: 以前に存在した変数のみを取り出します。
EXTR_PREFIX_IF_EXISTS: EXTR_IF_EXISTS で取得した変数は、変数名にプレフィックス文字列を追加し、その値を 3 番目のパラメーターで指定します。
EXTR_REFS: 参照によって変数を抽出し、抽出された変数の値の変更が元の配列の値に影響を与えることを示します。

注: 変数名にプレフィックス文字列を追加する場合、新しい変数名は PREFIXkey ではなく PREFIX_key になります。



コードをコピー コードは次のとおりです。

$a = array(
"カラー" => "レッド"、
"サイズ" => "XXL"、
"価格" => "53"); );
echo "color = $SC_color
";
echo "size = $SC_size
";
extract($a,EXTR_REFS);
$color="green";
echo $a['color']; //元の配列の値を表示します
? >

結果は次のようになります:
色 = 赤
サイズ = XXL
価格 = 53


ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のおすすめ
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート