第10章 オブジェクト指向構文 / 第5回 模擬試験

PHPのマジックメソッド`__get()`と`__set()`に関する次の記述のうち、正しいものはどれか。

`__get()`は未定義(またはprivate等でアクセス不可)のプロパティを読み取ろうとした際に呼び出される。 正解
`__set()`はオブジェクトが破棄される際に呼び出される。
`__get()`と`__set()`は、publicプロパティへの通常のアクセス時にも常に呼び出される。
`__get()`はコンストラクタの別名である。
解説
`__get($name)`は未定義またはアクセスできないプロパティの読み取り時に、`__set($name, $value)`は同様に書き込み時に自動的に呼び出されるマジックメソッドです。(参照: 独習PHP 第4版 第10章 オブジェクト指向構文 10.8.1節 未定義のプロパティを処理する① p.555〜557)