首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Php runkit_import和最终类

Php runkit_import和最终类
EN

Stack Overflow用户
提问于 2014-11-23 20:17:57
回答 1查看 96关注 0票数 0

我在这里读到:http://osdir.com/ml/php.phpunit.user/2008-05/msg00009.html,改变一个类的final行为可以用runkit来改变--我就是看不出该怎么做。

编辑:请不要这样做,我检查了runkit_import()函数,但http://php.net/manual/en/runkit.constants.php仍然找不到方法

EN

回答 1

Stack Overflow用户

发布于 2014-11-23 20:35:57

这是..。有限的使用。下面是一个示例:

代码语言:javascript
复制
final class Foo {
    protected $var = '456';
    function doSomething(){
        return '123';
    }
    function getVar(){
        return $this->var;
    }
}

class Bar {

}
runkit_class_adopt('Bar','Foo');

$d = new Bar();
var_dumP($d->doSomething());
//string(3) "123"
var_dumP($d->getVar());
//PHP Notice:  Undefined property: Bar::$var in .... on line 10
//NULL

通常,最好为final类编写一个装饰器(或者从源代码中删除final )。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/27088852

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档