با استفاده از تابع array_diff_udiff در PHP، دو آرایهٔ لیست محصولات (هر عنصر یک آرایهٔ انجمنی با کلیدهای id و price) را با تعریف یک تابع مقایسهٔ سفارشی طوری مقایسه کنید که محصولاتی که در آرایهٔ اول وجود دارند اما با همان id و price در آرایهٔ دوم نیستند را پیدا کنید.
4.0 بازدید آخرین ویرایش در 220 روز قبل ساعت 02:14 0.0
برای حل این مسئله در PHP یک تابع مقایسه بنویسید که دو عنصر (آرایهٔ انجمنی) را بر اساس id و سپس price مقایسه کرده و عدد منفی، صفر یا مثبت بازگرداند؛ سپس از array_diff_udiff با آرایهٔ اول، آرایهٔ دوم و نام تابع مقایسه استفاده کنید تا اختلافها استخراج شود. این روش برای پردازش دادهها در آنالیتیکس یا فیلتر نتایج در برنامههای وب مفید است — توجه کنید که نوع دادهها را یکنواخت کنید (مثلاً cast به int یا float) و طبق قرارداد callback مقدار منفی/صفر/مثبت برگردانید.
1 پاسخ
جدید ترین قدیمی ترین بالاترین امتیاز پاسخ های من
در حال بارگیری...
برای ارسال پاسخ باید با حساب کاربری وارد شوید.
ورود به حساب کاربری
برای مقایسهٔ دو آرایهٔ لیست محصولات، یک تابع مقایسه بنویسید که ابتدا id را مقایسه کند و اگر برابر بود price را نیز چک کند و خروجی -1/0/1 بدهد. بهکارگیری این تابع با array_udiff این امکان را میدهد که عناصر آرایهٔ اول که با عناصر آرایهٔ دوم برابر نیستند (بر اساس id و price) استخراج شوند. همچنین مهم است دادههای داخلی را همسانسازی کنید، مثلاً id را به int و price را به float تبدیل کنید تا تفاوتها به درستی تشخیص داده شوند. توجه کنید که نام صحیح تابع برای این کار array_udiff است و اگر نامی مانند array_diff_udiff استفاده شود احتمال کار نکردن وجود دارد.
گزارش