説明する
1. プライベート メンバー属性はオブジェクトの外部で取得できます。__get() は現在のクラスのプライベート メンバー変数を取得するだけでなく、このメソッド内で他の操作も実行できます。
たとえば、別のクラスをインスタンス化し、別のクラスのオブジェクトを取得します。
2. メンバーのプロパティがプライベートとしてカプセル化されていない場合、オブジェクト自体はこのメソッドを自動的に呼び出しません。
例
<?php クラスオートフェリックス { プライベート $name = 'autofelix'; パブリック関数 __get($name) { if(in_array($name, ['名前', '年齢'])) { $this->name をエコーします。 } それ以外 { echo 'すべてにアクセスできるわけではありません~'; } } } $a = 新しい autofelix(); $a->名前; //出力: autofelix
上記はメンバー属性を取得するための PHP の __get メソッドです。皆さんの参考になれば幸いです。