سلام
من دارم از پکیج maatwebsite برای ایمپورت کردن فایل اکسل به دیتابیس استفاده میکنم
منتهی بعد از دریافت داده ها از فایل و قرار دادن اونا در یک آرایه این خطارو میگیرم.
Trying to get property 'number' of non-object
میشه لطف کنید راهنمایی کنید چطور این خطا رو میشه برطرف کرد.
$data = Excel::toArray(new DiscountsImport,$request->file('file'));
if(!empty($data ) && $data != null){
foreach ($data as $key => $value) {
if( $value != null && count($value) > ۰){
$insert[] = ['number' => $value->number,
'code' => $value->code,'price'=>$value->price];
}
}
if(! empty($insert))
DB::table('discounts')->insert($insert);
//Discount::insert($insert);
//DB::table('discounts')->insert($insert);
سلام.
یعنی الان number شما مقدار نداره. چند دلیل ممکنه داشته باشه:
شما احتمالا بین مدل هاتون ارتباط دارید، یعنی کلید اصلی و خارجی براشون تعریف کردید در حالی که توی داده های تو جداولتون این رابطه درست نیست. یعنی یه مقداری دارید که تو جدول اصلی که کلید اصلیه، اون مقدار وجود نداره.
یا ممکنه مشکل از مدل ها و نحوه دسترسی به number باشه.
ارور مربوط به خطی هست که گفتید :
$value->number;
و داره میگه $value چنین property نداره. پس یکبار اون رو die and dump کنید ببینید داخلش چه خبره:
dd($value)
سلام فک میکنم چون دیتا رو تبدیل به ارایه کردین و به صورت ابجکت باهاش برخورد کردین مشکل به وجود اومده.
مقدار رو به این صورت دریافت کنین شاید مشکل حل شد.
$value['number'];
آیا مایل به ارسال نوتیفیکیشن و اخبار از طرف راکت هستید ؟