get_defined_vars()
は、全ての定義済みの変数を、変数名をキーとする配列に格納し返す組み込み関数。
定義
配列型 get_defined_vars();
戻り値
全ての定義済みの変数を格納した配列。
構文
全ての定義済みの変数を格納した配列を生成
配列 = get_defined_vars();
全ての定義済みの変数を、変数名をキーとする配列に格納。
サンプル
全ての定義済みの変数を配列に格納
<?php
$varA = "文字列";
$varB = 123;
$varC = 1.23;
$varArray = get_defined_vars();
echo $varArray["varA"] . "<br />";
echo $varArray["varB"] . "<br />";
echo $varArray["varC"] . "<br />";
?>
$varA = "文字列";
$varB = 123;
$varC = 1.23;
$varArray = get_defined_vars();
echo $varArray["varA"] . "<br />";
echo $varArray["varB"] . "<br />";
echo $varArray["varC"] . "<br />";
?>
↓↓↓出力結果↓↓↓
文字列
123
1.23
123
1.23
スコープ内の全ての定義済みの変数を配列に格納
get_defined_vars()
を呼び出したスコープの外の変数は格納されていない点に注目。
<pre>
<?php
$varA = "A";
function sample() {
$varB = "B";
$varC = "C";
print_r( get_defined_vars() );
}
sample();
?>
</pre>
<?php
$varA = "A";
function sample() {
$varB = "B";
$varC = "C";
print_r( get_defined_vars() );
}
sample();
?>
</pre>
↓↓↓出力結果↓↓↓
Array
(
[varB] => B
[varC] => C
)
(
[varB] => B
[varC] => C
)
スコープ内の全ての定義済みの変数を多次元配列に格納
get_defined_vars()
を呼び出したスコープの外の変数は格納されていない点に注目。
多次元配列になっている点に注目。
<pre>
<?php
$varA = "A";
function sample() {
$varB = array( "red" => "赤", "blue" => "青", "green" => "緑" );
$varC = "C";
print_r( get_defined_vars() );
}
sample();
?>
</pre>
<?php
$varA = "A";
function sample() {
$varB = array( "red" => "赤", "blue" => "青", "green" => "緑" );
$varC = "C";
print_r( get_defined_vars() );
}
sample();
?>
</pre>
↓↓↓出力結果↓↓↓
Array
(
[varB] => Array
(
[red] => 赤
[blue] => 青
[green] => 緑
)
[varC] => C
)
(
[varB] => Array
(
[red] => 赤
[blue] => 青
[green] => 緑
)
[varC] => C
)