用户注册



邮箱:

密码:

用户登录


邮箱:

密码:
记住登录一个月忘记密码?

发表随想


还能输入:200字
云代码 - php代码库

PHP类实现类似final的功能

2014-11-05 作者: php源代码大全举报

[php]代码库

class a {

    public $attr2 = 'a';
    private $final_attr = '1';

    function __construct() {

        $vars = get_class_vars(get_class($this));
        foreach($vars as $k => $val) {
            if(substr($k,0,strlen('final_')) == 'final_') continue;
            $v = 'final_'.$k;
            if(isset($this ->$v )) {
                echo 'class : ' . get_class($this) . " Can't declare parent's attribute!";
                exit();
            }
        }
    }

    function __set($attr,$val) {

        $v = 'final_'.$attr;
        if(isset($this -> $v)) {
            $this -> $v = $val;
        }
    }

    function __get($k) {

        $v = 'final_'.$k;
        if(isset($this -> $v)) {
            return $this -> $v;
        }
    }
}

class b extends a {

    public $attr = 'b';

    function __construct() {
        parent::__construct();
    }
}

$a = new b();


网友评论    (发表评论)


发表评论:

评论须知:

  • 1、评论每次加2分,每天上限为30;
  • 2、请文明用语,共同创建干净的技术交流环境;
  • 3、若被发现提交非法信息,评论将会被删除,并且给予扣分处理,严重者给予封号处理;
  • 4、请勿发布广告信息或其他无关评论,否则将会删除评论并扣分,严重者给予封号处理。


扫码下载

加载中,请稍后...

输入口令后可复制整站源码

加载中,请稍后...