并且require_once以某种方式不起作用(警告:require_once(./ AutentificadorJWT.php):无法打开流:第2行的C:\ xampp \ htdocs \ clases \ usuario.php中没有此类文件或目录) 据我所知./指向当前目录。现在以下工作: require_once'AutntificadorJWT.php'; 为什么./不起作用?
答案 0 :(得分:1)
当您拥有复杂的代码层次结构时,很难知道当前目录是哪个目录。如果您想拥有一个恒定的参考点,那么您可以使用$_SERVER['DOCUMENT_ROOT']
来定义计算机上代码的基础。所以......
require_once $_SERVER['DOCUMENT_ROOT'].'/base.php';
将在项目的根目录中使用base.php。我遇到的一个问题是,单元测试并不总是设置了很多$_SERVER
个变量。
或者,您可以使用__DIR__
这是当前文件的目录。因此,如果在您的情况下,您将其更改为...
require_once __DIR__.'/AuthentifacdorJWT.php';
这将始终相对于您使用的文件的目录。