运行 Laravel Seeder 时数组到字符串转换错误

aln*_*sre 1 php faker laravel

ErrorException Array to string conversion当我运行播种器时出现错误。

\n

php artisan db:seed --class=StudentSeeder

\n

在我对 进行更改之前它工作得很好StudentFactory.php,我只是更改了所有的伪造者,而且我不知道是哪个伪造者造成了这个麻烦。

\n
<?php\n\nnamespace Database\\Factories;\n\nuse Illuminate\\Database\\Eloquent\\Factories\\Factory;\nuse Illuminate\\Support\\Str;\nuse App\\Models\\Student;\n\nclass StudentFactory extends Factory\n{\n    /**\n     * The name of the factory's corresponding model.\n     *\n     * @var string\n     */\n    protected $model = Student::class;\n\n    /**\n     * Define the model's default state.\n     *\n     * @return array\n     */\n    public function definition()\n    {\n        return [\n            'student_name' => $this->faker->name('male'),\n            'cpr' => $this->faker->creditCardNumber,\n            'email' => $this->faker->safeEmail,\n            'mobile' => $this->faker->e164PhoneNumber,\n            'mobile2' => $this->faker->e164PhoneNumber,\n            'dob' => $this->faker->date(),\n            'address' => $this->faker->address,\n            'live_in\xd9\x80state' => $this->faker->randomElement(["UNKNOWN", "OWN", "RENT"]),\n            'relationship\xd9\x80state' => $this->faker->randomElement(["UNKNOWN", "SINGLE", "MARRIED", "DIVORCED"]),\n            'family_members' => $this->faker->randomNumber(),\n            'family_depends' => $this->faker->randomNumber(),\n            'degree' => $this->faker->text,\n            'hawza\xd9\x80history' => $this->faker->boolean,\n            'hawza\xd9\x80history_details' => $this->faker->paragraphs,\n            'health\xd9\x80history' => $this->faker->boolean,\n            'health\xd9\x80history_details' => $this->faker->paragraphs,\n            'financial\xd9\x80state' => $this->faker->randomElement(["UNKNOWN", "POOR", "AVERAGE", "GOOD", "EXCELLENT"]),\n            'financial_details' => $this->faker->paragraphs,\n            'student_notes' => $this->faker->paragraphs,\n            'registration_at' => $this->faker->date(),\n        ];\n    }\n}\n\n
Run Code Online (Sandbox Code Playgroud)\n

完整控制台错误:

\n
ErrorException \n\n  Array to string conversion\n\n  at vendor/laravel/framework/src/Illuminate/Support/Str.php:494\n    490\xe2\x96\x95 \n    491\xe2\x96\x95         $result = array_shift($segments);\n    492\xe2\x96\x95 \n    493\xe2\x96\x95         foreach ($segments as $segment) {\n  \xe2\x9e\x9c 494\xe2\x96\x95             $result .= (array_shift($replace) ?? $search).$segment;\n    495\xe2\x96\x95         }\n    496\xe2\x96\x95 \n    497\xe2\x96\x95         return $result;\n    498\xe2\x96\x95     }\n\n      +17 vendor frames \n  18  database/seeders/StudentSeeder.php:17\n      Illuminate\\Database\\Eloquent\\Factories\\Factory::create()\n\n      +22 vendor frames \n  41  artisan:37\n      Illuminate\\Foundation\\Console\\Kernel::handle()\n
Run Code Online (Sandbox Code Playgroud)\n

Sid*_*zen 6

将所有出现的 更改$this->faker->paragraphs$this->faker->paragraphs(3, true)

paragraphs格式化程序默认输出一个数组。第二个参数true指示应返回字符串而不是数组。