sina
1 سال پیش توسط sina مطرح شد
2 پاسخ

فلیلتر در فیلد سریالایز شده در دیتابیس

سلام دوستان
فرض کنید در لاراول یک آرایه به صورت serialize شده در یک فیلد بنام sizes در جدول products ذخیره کردیم. حالا هنگام query زدن قصد داریم این آرایه را با آرایه ای که کاربر انتخاب کرده مقایسه کنیم(در واقع میخواهیم فیلتر انجام بدیم). میخواهیم این ردیف از جدول حتی با داشتن یک عنصر مشترک بین دو آرایه برای ما بازگردانده شود. این کار را حتما باید در query انجام بدم نه با foreach. ممنونم
@hadikhanian
@sinashahoveisi
@webnolin
@endworld
@juza66
@hesammousavi
@developer


ثبت پرسش جدید
سید هادی خانیان
تخصص : برنامه نویس PHP
@hadikhanian 1 سال پیش مطرح شد
1

سلام.
به صورت کلی باید اطلاعاتی به صورت serialize شده در دیتابیس ذخیره نماید که نیازی به کوئری گرفتن از آنها نداشته باشید.
در نتیجه باید روش کار را اصلاح یا روش های دیگری به غیر کوئری گرفتن مستقیم از دیتابیس استفاده نمایید.


سیدعلی موسوی
تخصص : سی شارپ و پی اچ پی
@juza66 1 سال پیش آپدیت شد
1

همانطور که سیدهادی اشاره کردن شما وقتی دیتای رو serialize میکنید نمیتونین کوئری مستقیم بزنید و باید از map در کالکشن استفاده کنید، درباره map کردن کالکشن سرچ کنید


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

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