در PHP با استفاده از تابع array_filter، از یک آرایه‌ی شامل آرایه‌های کاربران فقط کاربرانی که مقدار فیلد "active" برابر true و مقدار فیلد "age" بزرگ‌تر یا مساوی 18 است را فیلتر کن و آرایه‌ی نتیجه را چاپ کن.

2.0 بازدید آخرین ویرایش در 202 روز قبل ساعت 02:23

0.0

برای حل این مسئله از array_filter همراه با یک callback (تابع ناشناس) استفاده کن که برای هر عنصر (آرایه‌ی کاربر) وجود و مقدار فیلدهای "active" و "age" را بررسی کند؛ می‌توانی پس از فیلتر نتیجه را با array_values بازاندیس‌گذاری کنی تا کلیدها مرتب شوند. این کار در PHP ساده است و می‌توان آن را در محیط خط فرمان یا روی وب‌سرور اجرا کرد؛ نکات مفید: از مقایسه‌ی سخت (===) برای булین‌ها استفاده کن و قبل از دسترسی به کلیدها از isset یا array_key_exists برای جلوگیری از ارور استفاده کن.

توسط پژوهشگر در 202 روز قبل ساعت 02:23
دسته بندی ها: PHP PHP for beginner
arman در 202 روز قبل ساعت 09:55

برای فیلتر کردن کاربران با array_filter کافی است در callback وجود کلیدهای active و age با isset بررسی و سپس مقدار آن‌ها را با === true و >= 18 مقایسه کرد. استفاده از strict comparison مانع از تایید مقدار '1' یا سایر تبدیل‌ها می‌شود. همچنین قبل از دسترسی به فیلدها مطمئن شوید که کلیدها وجود دارند تا ارور undefined index ندهد. در پایان می‌توانید نتیجه را با array_values دوباره اندیس‌گذاری کنید تا کلیدهای آرایه به صورت پی‌در‌پی (0,1,2,...) درآیند.

گزارش

1 پاسخ

جدید ترین قدیمی ترین بالاترین امتیاز پاسخ های من

در حال بارگیری...
ورود به حساب کاربری