关键字';使用';在php中工作(laravel)
我不明白use关键字在laravel框架中是如何工作的 我创建了一个控制器关键字';使用';在php中工作(laravel),php,laravel,Php,Laravel,我不明白use关键字在laravel框架中是如何工作的 我创建了一个控制器PostsManagerController.php // autoload.php @generated by Composer require_once __DIR__ . '/composer/autoload_real.php'; return ComposerAutoloaderInita990d9507b876ea05d2300077581f677::getLoader(); 此控制器具有名称空间App\
PostsManagerController.php
// autoload.php @generated by Composer
require_once __DIR__ . '/composer/autoload_real.php';
return ComposerAutoloaderInita990d9507b876ea05d2300077581f677::getLoader();
此控制器具有名称空间App\Http\Controllers代码>
在这里之前一切都很好
问题出在routes/web.php
// autoload.php @generated by Composer
require_once __DIR__ . '/composer/autoload_real.php';
return ComposerAutoloaderInita990d9507b876ea05d2300077581f677::getLoader();
我发现这有两行
use App\Http\Controllers\PostsManagerController;
use Illuminate\Support\Facades\Route;
我的问题是routes/web.php
如何知道PostsManagerController类和Route类而不导入它们
正如我所知,如果我们想使用或处理其他文件中的类,首先需要导入它,在Laravel应用程序中有一个公用
文件夹。有一个文件名index.php
。需要
require __DIR__.'/../vendor/autoload.php';
注意index.php
是Laravel应用程序的入口点
在vendor
文件夹中。。如果你去那里,那里有一个文件autoload.php
// autoload.php @generated by Composer
require_once __DIR__ . '/composer/autoload_real.php';
return ComposerAutoloaderInita990d9507b876ea05d2300077581f677::getLoader();
autoload.php
file自动加载所有类文件…某个地方有一个自动加载程序。自动加载程序指定在何处查找类,使用声明告诉php该类所在的命名空间,通常是自动加载路径的某个子集。如果使用类作为回调,则路由定义应使用控制器。如果你不看web.php文件,就很难说它为什么工作。如果你想知道每当从uri调用路由时,它是如何通过routes/web.php到控制器,再到它指定的方法执行的,你可以检查我最近写的这个答案