📜  自动加载文件 laravel - PHP (1)

📅  最后修改于: 2023-12-03 15:41:23.663000             🧑  作者: Mango

自动加载文件 Laravel - PHP

在 Laravel 中,你不需要手动加载你所有的类和依赖项。Laravel 采用自动加载机制,它可以自动加载你的类和依赖项。

Composer 自动加载

Laravel 使用 Composer 自动加载器来加载类。Composer 会自动地在下面定义的目录中寻找类:

  • app
  • bootstrap
  • config
  • database
  • public
  • resources
  • routes
  • storage
  • tests
  • vendor

你可以使用 Composer 调整自动加载器的行为或者增加自定义的目录。

自定义自动加载目录

如果你需要在 Laravel 中加载自己的类或者第三方库,你可以在 composer.json 文件中增加额外的自动加载目录。

{
    "autoload": {
        "psr-4": {
            "App\\": "app/",
            "MyNamespace\\": "my-namespace/",
            "vendor\\": "vendor/"
        }
    }
}

上面的代码片段中,MyNamespace\\ 表示你自定义的命名空间,它将指向你自定义的目录 my-namespace/vendor\\ 表示第三方库的命名空间,它将指向 vendor/ 目录。

类的显式加载

如果你需要显式地加载一个类,你可以使用 PHP 的 require_once 或者 include_once 函数。

require_once '/path/to/MyClass.php';

当你需要加载一个类库(通常使用 Composer 安装的第三方库)时,你可以调用 Composer 的自动加载函数来引入类。

require_once __DIR__ . '/vendor/autoload.php';

这个代码片段会在 vendor/autoload.php 中加载 Composer 自动加载器,他会自动地为你加载所有需要的类。

总结

在 Laravel 中,你不需要手动加载所有的类和依赖项。通过 Composer 自动加载机制,Laravel 可以自动地加载你的类和依赖项。你还可以增加额外的自动加载目录,或者通过 PHP 的 require_once 或者 Composer 的自动加载函数显式地加载类。