问题:我有一个index.php
文件,它有几个作曲家依赖项。在index.php
文件内部,我尝试在另一个php (假设是auth.php
)文件中从外部类调用静态方法,如下所示:
/*creating a class instance*/
$var = new AuthClass();
/*accessing an outside class method*/
$var = AuthClass::checkTime($tokenCode);
问题是,类中的checkTime
方法也需要composer依赖项,尽管该文件与index.php位于同一文件夹中并且包含index.php,但该依赖项不是继承的。
PHP Fatal error: Uncaught Error: Class 'Token' not found
我已经尝试了所有的方法--从添加require_once/include 'index.php‘到将composer自动加载复制到AuthClass代码外部和内部的auth.php,但都不起作用,我仍然收到同样的错误。
附加代码:
index.php
require __DIR__ . '/src/vendor/autoload.php';
$argument1 = $_GET['argument1'];
$tokenCode = $_GET['tokenCode'];
include 'config/database.php';
include 'objects/program1.php';
include 'auth.php';
use ReallySimpleJWT\Token;
use Carbon\Carbon;
$secret = "somesecret";
if (($_SERVER['REQUEST_METHOD']) == "GET") {
if ($_GET['url'] == "bankquery") {
if($tokenCode===NULL){
echo "no correct token provided";
print($results);
} else {
$results = Token::validate($tokenCode, $secret);
if ($results = 1){
$var = new AuthClass();
$var = AuthClass::checkTime($tokenCode);
} else {
echo "no correct token provided";
}
}
} else {
echo "some GET other query";
}
?>
auth.php
// loading composer
require __DIR__ . '/src/vendor/autoload.php';
//loading my index.php file
include 'index.php';
//using composer dependencies
use ReallySimpleJWT\Token;
use Carbon\Carbon;
class AuthClass{
public static function checkTime($tokenCode){
// getting payload from token code by accessing the composer dependency method in a class Token
$received = Token::getPayload($tokenCode);
return $received;
}
}
?>
需要帮助,伙计们。
发布于 2018-08-24 22:59:10
最简单的解决方案是在composer自动加载中包含您自己的代码。composer website将告诉您如何执行此操作。
你不需要自己需要composer文件,composer会为你处理所有的事情。
PSR-4告诉您如何将代码命名为空间以使用命名空间。
https://stackoverflow.com/questions/52004600
复制相似问题