编写器自动加载文件调试



我正在尝试通过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';
另外,请注意,每次请求
时,该文件都将加载到上。

相关内容

  • 没有找到相关文章

最新更新