1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
<?php
/** -------------------------------------------------------------------------------
* 可変変数は、変数の値をとり、変数の名前として扱う。:利用の例
* 2015.08.19 作成 yoshi of CXMedia Inc.
* -------------------------------------------------------------------------------- */
header("Content-type:text/plain; charset=UTF-8");
//"hello"は、$記号を二つ以上使用することで、変数の名前として使用が可能
echo "■可変変数の\$記号を二つ以上使用で、変数の名前として使用が可能\n";
$a = 'hello';
$$a = 'world';
$$$a = 'japan';
//"hello"を値とする$aと "world"を値とする$hello
echo "$a ${$a}","\n";
// 上記の構文と全く同じ意味
echo "$a $hello","\n";
// "japan"を値とする$world
echo "$world","\n";
// 可変変数の再帰的変数
echo "■可変変数の再帰的変数\n";
$a = "Hello";
$Hello = "World";
$World = "Japan";
$Japan = "a";
echo $a,"\n"; // Hello
echo $$a,"\n"; // World
echo $$$a,"\n"; // Japan
echo $$$$a,"\n"; // a
echo $$$$$a,"\n"; // Hello
echo $$$$$$a,"\n"; // World
echo $$$$$$$a,"\n"; // Japan
/** ---------------------------------
* 配列の可変変数の要素の構文:
* 「$a[1]」変数として使用「${$a[1]}」
* 変数の添え字のとき「${$a}[1]」
*/
$aryFrt = array("cherry", "banana", "lemon");
$a = "aryFrt";
${$a}[] = "melon"; // $$a[] = "melon"は、Fatal Errorとなる
print_r($aryFrt);
print_r(${$a});
?>