php - 嵌套动态 PHP 类

标签 php class object

我可能只需要更新术语,但我一直在 Magento 和 Joomla 中玩,他们确实提供了类似的引用

$mage = new Mage;
$mage->block('blockname');

法师类通过一些我无法弄清楚的过程正在调用:

class blockname extends something{

}

不要引用我的代码,但是我希望做类似的事情,我有一个可以执行的文件 $myscript->block('blockname');它将加载并调用具有类 block 名的文件。

最佳答案

class Mage {
    private $block;

    public function block($blockname) {
        if (!class_exists($blockname, true)) {
            throw new InvalidArgumentException("Not a valid class name: $blockname");
        }
        $this->block = new $blockname;
    }
}

类定义的加载(如果尚未完成)通常是通过自动加载完成的(请参阅 here )。

关于php - 嵌套动态 PHP 类,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3029820/

相关文章:

php - Zend 框架操作堆栈替代方案

javascript - 为什么我们不能直接在javascript中设置数组值?

php - 如何防止 PHP 中的 SQL 注入(inject)?

c# - 使用单一工具分析多种语言的日志文件。和日志记录框架的建议

python - 需要在 python 类中路由实例调用

将指针转换为 cython 中类的实例

c++ - "new"没有在类中调用指定的构造函数?

javascript - 在 JavaScript Web 套接字中从服务器端返回一个 JSON 数组对象

javascript - 根据对象中另一个键的值获取键值

php - 有没有办法绕过子查询中的重复表?