设置 phpepub 库有困难

having difficulty setting up phpepub library

我已经下载 phpepub via composer 然后开始 运行 测试 文件 以了解如何使用该库但它会引发错误

Class 'com\grandt\EPub' not found

然后我开始查看测试 文件夹 并打开文件 exampletest1.php 也抛出了一个错误说

Class 'PHPePub\Core\Logger' not found

我正在考虑解决此错误一段时间的方法,现在检查了权限(这很好)文件也存在于文件夹中 这是库的文件结构

phpepub/
 legacy/
 src/
  PHPePub/
   Core/
    structure/
    Logger.php
    .
    .
    .
   Helpers/
 tests/
  demo/
  EPub.Example1.php
  .
  .
  .
  composer.json 
 vendor/
  composer/
  grandt/
  phpzip/
  .
  .
  .
 README.md
 test.php 
 ReadMe.html 
 .
 .
 .
 .
 composer.json 

您需要在使用通过 composer 安装的组件的每个文件中要求 vendor/autoload.php 文件。

test.php :

<?php

require_once __DIR__.'/vendor/autoload.php';

//...

test/exampletest1.php

<?php

require_once __DIR__.'/../vendor/autoload.php');

//...

请参阅 Composer 文档中的 Basic Usage - Autoloading

在您的项目中的使用

在项目的根目录中,将 "grandt/phpepub": ">=4.0.3" 添加到您的 composer 依赖项和 运行 composer install.

假设您的项目目录结构是:

project
  vendor
  public
    index.php
  composer.json

当你运行composer install时,Composer在项目根目录下创建一个目录vendor/并生成一个autoload文件vendor/autoload.php.

要使用 index.php 中安装的库,需要自动加载文件:

index.php :

<?php

require_once __DIR__."/../vendor/autoload.php";

//...

如需快速详细的解释,请尝试阅读 Juan Treminio - Composer Namespaces in 5 minutes