Is it possible to extend a class dynamically?

前端 未结 8 1343
耶瑟儿~
耶瑟儿~ 2020-12-05 10:09

I have a class which I need to use to extend different classes (up to hundreds) depending on criteria. Is there a way in PHP to extend a class by a dynamic class name?

8条回答
  •  孤城傲影
    2020-12-05 10:54

    I have an idea so simple, you can try

    class A {} 
    class B {}
    $dynamicClassName = "A";
    eval("class DynamicParent extends $dynamicClassName {}");
    
    class C extends DynamicParent{
       // extends success
       // Testing
       function __construct(){
            echo get_parent_class('DynamicParent'); exit; //A :)
       }
    }
    

提交回复
热议问题