【发布时间】:2020-07-23 10:56:53
【问题描述】:
如果我需要一个use 语句来访问一个类,这对我来说是非常随机的。在以下运行没有问题的代码中,Faker 库不需要 use Faker 或类似的东西,但 Seeder 确实需要 use。
我假设 Faker 是使用 Composer 自动加载器访问的,但在 composer.json 中我没有看到 vendor 目录用于 psr-4 自动加载或类映射自动加载,所以它是如何发现的超越我。
<?php
use Illuminate\Database\Seeder;
class MoreProductsSeeder extends Seeder
{
/**
* Run the database seeds.
*
* @return void
*/
public function run()
{
for ($i = 0; $i<1000; $i++)
{
$faker = Faker\Factory::create();
\App\Product::create([
'name' => $faker->name,
'photo' => 'https://picsum.photos/200/300',
'price' => rand(1,20000),
'category_id' => rand(1,3)
]);
}
}
}
【问题讨论】:
-
不是真的,我知道
use背后的概念,但不明白在我的具体示例中究竟是如何发挥作用的。 -
某些类可用作加载的服务提供者的别名。一些示例是
DB、Log等。您可以在config/app.php文件中找到完整列表。
标签: php