所以我在主类
中有这种结构函数function __construct(){
$this->conf = $GLOBALS['conf'];
$this->dbi = new dbinfo;
$this->modOpt = new modOptions;
$this->lang = new language;
/** Connect DB extended Class **/
parent::__construct($GLOBALS['connect']);
}
其中我定义了类,但是这个类是进入库文件的,该文件包含在文件的开头,除了一个,当post请求出现时会包含这个:
if (isset($_POST['delGroup']) && isset($_SESSION['content_viewer']) && $_SESSION['content_viewer']['code'] >= 1){
include_once(realpath(dirname(__FILE__) . '/../..')."/mod/dbinfo/proc.php");
}
所以我想在我的构造函数中加入check for dbinfo class,就像这样
function __construct(){
$this->conf = $GLOBALS['conf'];
if (isset(new dbinfo))
$this->dbi = new dbinfo;
$this->modOpt = new modOptions;
$this->lang = new language;
/** Connect DB extended Class **/
parent::__construct($GLOBALS['connect']);
}
但这个方法if isset
不起作用,请告诉我如何检查类是否存在于文件中的正确方法。感谢
答案 0 :(得分:3)
尝试使用class_exists()
http://php.net/manual/en/function.class-exists.php
在您的情况下,寻找dbinfo
课程:
if(class_exists('dbinfo')){
//do something
如果您的类具有命名空间,请包含ful命名空间的类名。
答案 1 :(得分:1)
class_exists('class_name',false);
如果函数尝试加载该类,则将false
设置为true
。