php spot
phpが使えるレンタルサーバー特集
検索グラス
トップページへ

アクセサという仕組み
PHP5ではアクセサという仕組みが追加されました。

これは、存在しないメンバ変数に変更を加えようとした際に自動的に呼ばれる set,get メソッドのことです。

class Test{
  funciton __set($name,$value)
  {

  }
  function __get($name)
  {

  }
}
// ↑のように定義します。

$a = new Test;
$a->name = "aaa"; // 値を設定しようとした時点で、$a->__set("name","aaa");が呼ばれます。
echo $a->name; // $a->__get("name") が呼ばれます。

この機能により、__set にて、加工した値をメンバに自動的に挿入といったことが出来るようになります。

存在しないメンバ関数を呼び出そうとした際に呼ばれる __call というものも存在します。

これは、

function __call($name, $params) {

class Test{
  function __call($name, $params) {
  {

  }
}
// ↑のように定義します。

$a = new Test;
$a->jump("hoge"); // __call("jump","hoge") が呼ばれます

このアクセサという仕組みで、より柔軟なプログラミングが出来ますね。アイデア次第でプログラミングを楽にする仕組みが作れそうです。

スポンサードリンク



もどる
管理人の新着ブログ記事

    プライバシーポリシー | お問い合わせ
copyright © 2003-2018 phpspot all rights reserved. powered by phpspot CMS.