ホームページ > バックエンド開発 > PHPチュートリアル > extractdata 配列を複数の変数に分割するための PHP 抽出関数

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

WBOY
リリース: 2016-07-29 08:43:12
オリジナル
1543 人が閲覧しました

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

コードをコピーします コードは次のとおりです:


$size = "old size"; //最後のサイズ変数の値に注意してください。
$a = array(
"色" => "赤",
"サイズ" => "XXL",
"価格" => "53"); color = $color
";
echo "size = $size
";
echo "price = $price
";
?>


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

color = red
size = XXL
price = 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(
"color" => "red",
"size" => "XXL",
"価格" => "53");
extract($a,EXTR_PREFIX_ALL,"SC");
echo "サイズ = $SC_size
";
echo "price = $SC_price
";
extract($a,EXTR_REFS);
$color="green";
echo $a['color']; // の値を表示します。元の配列
?> ;


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

上記では、extractdata の側面を含め、配列を複数の変数に分割する PHP 抽出関数を紹介しました。PHP チュートリアルに興味のある友人に役立つことを願っています。

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