我正在开展个人项目,这是我第一次使用OOP。我的项目有一个基类,由其他人扩展(基本设置)。澄清一下,这就是我在做的事情:
基类:
class ABC {
function __construct() {
...
}
}
扩展课程:
class DEF extends ABC {
function __construct() {
...
}
}
虽然总是加载基类,但根据情况加载其他类。
我的问题是,动态加载正确的扩展类的正确方法是什么?我应该'导入'两个PHP吗?我应该转换基类( $ x = new ABC()),然后从基类加载另一个类吗?
答案 0 :(得分:0)
您可以使用文件顶部的autoloader:
function __autoload($className) {
require_once $className . '.php';
}
或者您可以在子类'constuctor中使用父类'constuctor并手动导入php文件:
require_once(your_file.php);
class DEF extends ABC {
function __construct() {
parent::__construct();
}
}
答案 1 :(得分:0)
如果你把所有的类放在同一个文件夹中,并将它们命名为[class] .php,你可以将以下内容放在脚本的顶部,它们都会神奇地加载
<?php
function __autoload($class_name) {
require_once $class_name . '.php';
}
如果他们进入不同的文件夹,只需实施自己的方案