با استفاده از تابع array_diff_key در PHP یک اسکریپت بنویسید که از آرایهٔ دادههای کاربران، کلیدهای مشخصشده در آرایهٔ سیاه (blacklist) را حذف کرده و آرایهٔ تمیزشده را بازگرداند.
2.0 بازدید آخرین ویرایش در 220 روز قبل ساعت 02:12 0.0
توضیح: برای حذف کلیدهای نامطلوب از آرایهٔ اصلی میتوانید از array_diff_key استفاده کنید؛ این تابع کلیدهای آرایهٔ اول را نسبت به کلیدهای آرایههای بعدی مقایسه میکند. چون لیست سیاه معمولاً بهصورت آرایهای از نام کلیدهاست، ابتدا با array_flip آن را به یک آرایهٔ وابسته به کلید تبدیل کنید و سپس array_diff_key($data, array_flip($blacklist)) را صدا بزنید. این روش در پردازش دادهها و توسعهٔ وب برای پاکسازی فیلدهای حساس یا غیرضروری مفید است و بهسادگی برایآرایههای انجمنی (associative arrays) عمل میکند؛ در صورت نیاز به حذف درونریز میتوانید تابع را بازگشتی کنید.
1 پاسخ
جدید ترین قدیمی ترین بالاترین امتیاز پاسخ های من
در حال بارگیری...
برای ارسال پاسخ باید با حساب کاربری وارد شوید.
ورود به حساب کاربری
استفاده از array_diff_key با تبدیل blacklist به کلیدهای مرتبط با استفاده از array_flip، روشی سریع برای حذف کلیدهای نامطلوب از آرایهٔ دادهها است. از آنجا که این تابع کلیدهای آرایهٔ اول را نسبت به کلیدهای آرایههای بعدی مقایسه میکند، blacklist را با array_flip تبدیل کنید تا فقط کلیدها بررسی شوند. اگر کلیدهای موجود در دادهها در blacklist نباشند، نتیجه همان دادهٔ ورودی است و هیچ تغییری نمیکند. در صورت داشتن دادههای تو در تو یا نیاز به حذف کلیدهای سطحی دیگری، میتوانید این منطق را به صورت بازگشتی یا با یک تابع کمکی ساده توسعه دهید.
گزارش