Bonjour,
Je débarque un peu en PHP et j'essaye de déployer une api php sur un serveur Debian 9.
J'ai installé la librairie Lcobucci via composer.
J'ai un fichier AuthController.php qui fait
1 2 3 4
| use Lcobucci\JWT\Builder;
use Lcobucci\JWT\Signer\Hmac\Sha256;
use Lcobucci\JWT\Parser;
use Lcobucci\JWT\ValidationData; |
Mon arboresence :
- /home/$USER/api-v3/api/www/vendor/lcobucci/jwt
- /home/$USER/api-v3/api/www/app/controllers/AuthController.php
L'autoload.php fait
return ComposerAutoloaderInit284b1942c0e74e39634354f520984117::getLoader();
qui appelle getLoader() dans autoload_real.php
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31
| public static function getLoader()
{
if (null !== self::$loader) {
return self::$loader;
}
spl_autoload_register(array('ComposerAutoloaderInit284b1942c0e74e39634354f520984117', 'loadClassLoader'), true, true);
self::$loader = $loader = new \Composer\Autoload\ClassLoader();
spl_autoload_unregister(array('ComposerAutoloaderInit284b1942c0e74e39634354f520984117', 'loadClassLoader'));
$useStaticLoader = PHP_VERSION_ID >= 50600 && !defined('HHVM_VERSION') && (!function_exists('zend_loader_file_encoded') || !zend_loader_file_encoded());
if ($useStaticLoader) {
require_once __DIR__ . '/autoload_static.php';
call_user_func(\Composer\Autoload\ComposerStaticInit284b1942c0e74e39634354f520984117::getInitializer($loader));
} else {
$map = require __DIR__ . '/autoload_namespaces.php';
foreach ($map as $namespace => $path) {
$loader->set($namespace, $path);
}
$map = require __DIR__ . '/autoload_psr4.php';
foreach ($map as $namespace => $path) {
$loader->setPsr4($namespace, $path);
}
$classMap = require __DIR__ . '/autoload_classmap.php';
if ($classMap) {
$loader->addClassMap($classMap);
}
} |
J'obtiens un Class not found "Error: Class 'Lcobucci\JWT\Signer\Hmac\Sha256' not found in /app/app/controllers/AuthController.php on line 141"
Je me doute que c'est un problème de chemin mais je ne sais pas comment faire, est-il possible de donner à l'autoloader le chemin en dur ?
Merci pour votre aide.
Partager