如何用作曲家自动加载?

时间:2018-03-17 13:37:57

标签: php composer-php

我正在尝试让作曲家自动加载器工作一个小时,而且我没有想法。看了大约二十多个堆栈溢出答案,但仍然不了解它是如何工作的:

我正在尝试从this composer package创建new ClientRepository()

See example of usage

我的php文件

<?php
require __DIR__ . '/../vendor/autoload.php';

$clientRepository = new ClientRepository();

我已经尝试了以下内容:

  • new League\OAuth2\Server\Repositories\ClientRepository();
  • new League\OAuth2\Server\ClientRepository();
  • new League\ClientRepository();
  • new League\Repositories\ClientRepository();

作曲家文件夹的结构

enter image description here

1 个答案:

答案 0 :(得分:3)

ClientRepository 不是包 league / oauth2-server 的一部分,尽管它在包文档中的一些示例代码中使用。您需要先创建它(通过实现接口 \ League \ OAuth2 \ Server \ Repositories \ ClientRepositoryInterface )然后使用它,这对于问题来说太复杂了。

如果您只想查看Composer如何为该程序包工作,则以下代码应该可以正常工作:

<?php
require __DIR__ . '/../vendor/autoload.php';

$request = new League\OAuth2\Server\RequestTypes\AuthorizationRequest();
?>

<?php
use League\OAuth2\Server\RequestTypes\AuthorizationRequest;

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

$request = new AuthorizationRequest();
?>