我正在尝试通过composer自动加载一个非基于类的文件
"autoload" : {
"files": ["app/routes.php"]
},
但是我无法在我的脚本中得到这个文件的内容。我已经包括了vendor/autoload.php
以及运行的dump-autoload
。
我想要的是,如果有一种方法,我们可以看到的文件列表是由composer在浏览器或终端中自动加载的,这样我就可以确保自动加载工作正常,还有一些其他问题在我的代码。
感谢更新:文件层次
index . php
/**
* Including the Composer's autoloader
*/
require_once 'vendor/autoload.php';
/**
* Bootstrap our application
*/
require_once 'app/init.php';
Init.php
<?php var_dump($route); ?>
routes.php
<?php
$route = 'abc';
?>
所以我的问题是我想访问$route变量在我的init.php
文件
我已经查看了autoload_real.php
,并且我注意到这些文件不包括在全局作用域中。
public static function getLoader()
{
[...]
$includeFiles = require __DIR__ . '/autoload_files.php';
foreach ($includeFiles as $file) {
require $file;
}
[...]
}
参见变量作用域。只需在routes.php文件中添加一个echo "test";
,以确认它被正确包含。然后你可以把routes.php
改成
function getRoutes()
{
return "abc";
}
和Init.php
<?php var_dump(getRoutes()); ?>
是否包含了Composer生成的autolload .php文件?
require_once 'path/to/autoload.php';
另外,请注意,每次请求