راکت

خطا در ساخت سیدر در لاراول

2 پاسخ

سلام دوستان وقت بخیر
@asp.gosk
@endworld
@Nima.nori
@mhyeganeh
@hosseinshirinegad98
من میام یه seeder رو ران کنم با دستور زیر :

php artisan db:seed --class=CarsTableSeeder

قبلا انجام میدادم بدون مشکل اجرا میشد ولی الان خطای زیر رو میده ممنون میشم راهنمایی کنن دوستان:

PHP Fatal error:  Allowed memory size of 1048576000 bytes exhausted (tried to allocate 20480 bytes) in C:\Users\NegarSystem\Desktop\test\vendor\laravel\framework
\src\Illuminate\Collections\Collection.php on line 677
PHP Fatal error:  Allowed memory size of 1048576000 bytes exhausted (tried to allocate 20480 bytes) in C:\Users\NegarSystem\Desktop\test\vendor\laravel\framework
\src\Illuminate\Foundation\Bootstrap\HandleExceptions.php on line 203
حمزه
حمزه
@hamzehhemmati0
ثبت پرسش جدید

پاسخ‌ها

2
محمدحسن یگانه
محمدحسن یگانه
@mhyeganeh

تخصص: Full-Stack Web Developer Freelancer

سلام
چیزی که از متن ارور میشه متوجه شد این هست که در CarsTableSeeder سعی دارید مقدار اطلاعات بسیار زیادی رو داخل مموری لود کنید و این مقدار بیشتر از مقدار مجاز تعریف شده هست.
و مثلا زمانی اتفاق می افته که تعداد زیادی رکورد رو از فایل اکسل یا دیتابیس یا ... بخونید و داخل مموری ذخیره کنید تا مثلا بعدش داخل حلقه ازشون استفاده کنید.

راه حل اصلیش شاید بازنگری کدهاتون و یا مثلا استفاده از chunk باشه.

ولی راه حل موقتی و نه چندان اصولیش هم میشه زیاد کردن دستی حد مجاز تعریف شده باشه که یا باید در فایل php.ini تون مقدار زیر رو بروزرسانی کنید:

memory_limit=1024M

یا در ابتدای شروع فایل seeder تون مقدار زیر رو قرار بدید:

ini_set('memory_limit', '1024M');
میلاد خسروی
میلاد خسروی
@milwad

تخصص: برنامه نویس بامزه

سلام خسته نباشید
این ارور مربوط به memory_limits هست که باید بیشترش کنید همین
برای بیشتر کردن فایل php_ini

شاید پاسخ شما همین‌جا باشد

برای ارسال پاسخ لازم است وارد شده یا ثبت‌نام کنید

ورود یا ثبت‌نام