我有一个关于在php中扩展类的问题。晚餐我有两个类,比如-
A类
B类
B类扩展A类
我的问题是:当我将实例化类B时,如果我需要在index.php中也包括类A?
例如-
include('classes/a.class.php');
include('classes/b.class.php');
或-
include('classes/b.class.php');
就足够了
我对此感到困惑。请帮我
如果我理解你的问题:
类B已经在扩展类A,那么您只需要在index.php中包含类B。类B必须能够包含从文件B.Class.php中的类A扩展而来的类A。因此,当在index.php 中包含类B时,类A与类B"已经存在"
如果类B扩展了类A并包含了类B,则文件已经包含了类A,则只需要包含B即可。
基本上,如果你在文件B中包含一个文件a,那么a中包含的任何文件都会包含在B中。因此,如果文件C包含B,它也会有一个
非常感谢Mark Baker让我了解自动加载器。我在网上搜索了一下,发现了一些非常有用的东西。这是自动加载器:
function __autoload($class_name) {
if(file_exists('classes/'.$class_name . '.class.php')) {
require_once('classes/'.$class_name . '.class.php');
} else {
throw new Exception('Unable to load '.$class_name);
}
}
我的班级在班级文件夹下。它会自动加载运行脚本所需的类。不需要包含任何内容。