【发布时间】:2018-10-27 14:20:37
【问题描述】:
因此,查看在线文档和用户 cmets,Composer 似乎是一个很棒的工具,我之前使用过 npm,所以我可以想象它使用起来会非常方便。只有一个问题,无论我尝试什么,我都无法让使用 Composer 安装的软件包正常工作。
我正在尝试安装 Lcobucci 的 JWT 软件包。我有一个想要添加的现有项目,但现有项目的设置方式是我在根目录中有一个 functions.php 文件,然后我的项目中的所有其他 php 脚本都包含该文件。函数文件包含数据库插件、数据库连接、包含等。
我直接使用 Composer 安装包
composer require lcobucci/jwt
我也尝试通过创建 JSON 文件并运行来安装它
composer install
就像它在文档中所说的那样。
然后我尝试在我的 include 中包含 autoload.php 文件
require __DIR__. "/vendor/autoload.php";
然后我添加了
use Lcobucci\JWT\Parser; //JWT Parser Class
但是当我尝试使用它时它一直抱怨该类不存在。
然后我尝试在 composer 包的 src 文件夹中的所有实际 PHP 文件上手动使用 require_once。依然没有。我尝试切换东西.. 尝试查看 PHP 使用了哪些文件
get_included_files();
我也试过了
composer dumpautoload
但我得到的只是
Generating autoload files
我似乎遗漏了一些东西,这就是为什么我在发布这个问题时犹豫不决,但我现在已经花了几个小时来解决这个问题,这令人沮丧。有什么我错过的吗?
如果有帮助,我正在使用 PHP 5.6.25 和 1.6.5 的 Windows 10 64 位运行 WAMP 服务器。
编辑: 我刚刚意识到如果我公开我的文件结构可能会有所帮助。 根 |-functions.php |-注册 |-index.php |供应商 |-autoload.php |-作曲家 |-科布奇 |-src
我正在尝试从 register 文件夹中的 index.php 文件访问 JWT 库,该文件包含 functions.php 文件。函数的工作原理如上所述。
【问题讨论】:
-
我刚刚也尝试过使用 firebase/php-jwt 包,但我无法让它工作,所以我一定错过了一些愚蠢的东西。
-
你能展示一下你是如何使用这个类的吗?
-
使用 JWT 库是 $token = (new Parser())->parse((string) $token); // 从字符串中解析
-
我也尝试过使用 Monolog/Monolog 和 $log = new Logger();同样包括我上面描述的过程。 @rob006
标签: include composer-php jwt require autoload