【问题标题】:Resolve namespaces from another PHP project从另一个 PHP 项目解析命名空间
【发布时间】:2014-07-22 04:25:29
【问题描述】:

我的服务器上有两个独立的 PHP 项目 - Project1 和 Project2。 Project1 定义了一些命名空间,例如'常见的'。 Project1 还有一个名为 DbPlace 的类,如下所示:

class DbPlace extends \common\DbModel
{
...
}

我想在 Project2 中使用这个类,所以在一个 Project2 文件中我这样导入它:

require_once "path/to/Project1/src/classes/db/DbPlace.php";

Class DbPlace.php 已成功找到,但出现以下错误:

Fatal error: Class 'common\DbModel' not found in D:\xampp\Project1\src\classes\db\DbPlace.php on line 6

如您所见,它找不到命名空间类 DbModel。有没有办法解决这个问题?

【问题讨论】:

    标签: php namespaces


    【解决方案1】:

    需要加载父类

    require_once "path/to/Project1/src/classes/common/DbModel.php";
    require_once "path/to/Project1/src/classes/db/DbPlace.php";
    

    请参阅 spl_autoloadPSR-4 了解有趣的自动加载工具以及摆脱 require 和 include。

    【讨论】:

    • 感谢有关自动加载的链接。
    猜你喜欢
    • 2014-12-10
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-06-11
    • 2019-12-31
    • 1970-01-01
    • 2016-09-22
    • 2012-08-06
    相关资源
    最近更新 更多