第2章 PHPの基本 / 第4回 模擬試験

PHPの変数の可変変数に関する次の記述のうち、正しいものはどれか。

可変変数は`$$name`のように、`$`を2つ重ねて記述する。 正解
可変変数は配列専用の機能であり、通常の変数には使用できない。
可変変数を使うと、変数の値を直接コメントアウトできる。
可変変数はPHP8で廃止された機能である。
解説
可変変数は`$$name`のように`$`を2つ重ねて記述し、変数`$name`が保持している「文字列の値」を、別の変数名として動的に扱う機能です。 例: ``` $name = 'foo'; $$name = 'bar'; // $foo = 'bar' と同じ意味になる echo $foo; // bar ``` 他の選択肢が誤りである理由は次の通りです。 ・可変変数は配列専用の機能ではなく、通常のスカラー変数にも使用できます。 ・可変変数はコメントアウトとは無関係の機能です。コメントアウトには`//`, `#`, `/* */`を使います。 ・可変変数はPHP8でも引き続き使用できる機能で、廃止されていません。 可変変数は動的にプロパティ名やキーを組み立てたい場面で使われることがありますが、コードの可読性を下げやすいため、多用は避けるのが一般的です。 (参照: 独習PHP 第4版 第2章 PHPの基本 2.1.4節 補足 可変変数 p.55)