Zend Framework composer autoload



我有具有以下供应商目录结构的PHP项目:

vendor
  zendframework
    zendframework
      library
       Zend
         ...
         ...
         Cache
         ...
         ...

当我将以下行放入autoload_namespaces.php时,一切都很好:

'Zend\Cache' => $vendorDir . '/zendframework/zendframework/library/',

但是这一行不起作用:

'Zend\Cache' => $vendorDir . '/zendframework/zendframework/library/Zend/Cache/',

错误是:

Fatal error: Class 'ZendCacheStorageAdapterMemcachedOptions' not found

我的代码有什么问题?如何仅从 zend 框架加载缓存模块?如果我指定整个库文件夹,为什么它会起作用?

ZF1 类对其他 ZF 类具有内部依赖关系。它期望整个框架自动加载。对于您遇到的每个未找到类的错误,您也需要手动加载该库。完成该列表将是乏味的,并非不可能。

请允许我提出一条更简单的前进道路:

Zend Framework 1.x可以与composer一起安装。

加:"要求":{"Zendframework/Zendframework1": "1.*"},

到你的作曲家.json并从命令行进行作曲家安装。这将下载 zend 框架并将库设置为自动加载以及作曲家正在管理的其他所有内容。

要让你的 zend 框架应用程序使用作曲家自动加载器,你需要编辑你的应用程序索引.php文件并包含作曲家自动加载器,如下所示:

require_once realpath(APPLICATION_PATH . '/../vendor/autoload.php');

相关内容

  • 没有找到相关文章

最新更新