我有两个类,都在不同的命名空间中。当我尝试从一个命名空间创建对象时,我得到错误
Fatal error: Class 'Classes\DrDatabase' not found in C:\Path\to\workspace\AplicationName\app\models\Users.model.php on line XY
有没有我用php命名空间无法理解的东西?
这两个文件:
FILE 1
namespace Classes;
class DrDatabase extends MssqlDatabase {
public function __construct() {
parent::createLog(__CLASS__);
parent::connect('ipaddress', 'database', 'user', 'password');
if ($this->link) {
$this->log->info('Connected');
}
}
}
FILE 2
namespace Model;
use \Classes\DrDatabase;
class UsersModel implements MasterModel {
private function get($id, $onlyEnabled) {
$db = new DrDatabase();
$getOnlyEnabled = 1;
if (!$onlyEnabled)
$getOnlyEnabled = 0;
$SQL = "SELECT * FROM table";
$resultSet = $db->query($SQL);
$result = array();
while ($row = mssql_fetch_assoc($resultSet)) {
$result[] = self::createUserObject($row['col1'],$row['col2']);
}
}
}
答案 0 :(得分:3)
除非您使用的是正确配置的自动加载器,否则您仍需要包含“文件1”才能正常使用。
否则 - 您的UserModel
如何知道在哪里找到DrDatabase
课程?