类的另类用法--数据的封装 

  •   2009-07-31/22:59
  • 类的另类用法--数据的封装
    一般的情况下,如果使用classname::property是不能访问到类的属性的,但可以用classname::method()使用类的方法。同样的也不能用objectname->property访问到类的方法里的变量。利用这一特点,我们可以将一些数据保存于类中,有点象c++的私有属性。
    <?
    class data {
      function value($var) {
        static $d = array();
        if(func_num_args() > 1) {
          $d[$var] = func_get_arg(1);
        }else {
          return $d[$var];
        }
      }
    }
    //测试:
    data::value("a",1);
    data::value("b",2);
    echo data::value("a");
    echo data::value("b");
    ?>


    评论 {{userinfo.comments}}

    {{money}}

    {{question.question}}

    A {{question.A}}
    B {{question.B}}
    C {{question.C}}
    D {{question.D}}
    提交

    驱动号 更多