ویژگی تصویر

فیلتر ها در PHP

  /  PHP   /  فیلتر ها در PHP
بنر تبلیغاتی الف
آموزش PHP

در این بخش به بررسی فیلتر ها در PHP می پردازیم. برای حفظ امنیت وب سایت و جلوگیری از بروز هرگونه باگ و خطا ، ما باید داده های ارسال از سمت کاربر را فیلتر و اعتبار سنجی کنیم.

از فیلتر ها چه استفاده ای می کنیم:

  • اعتبار سنجی داده ها: بررسی می کنیم که آیا داده ها صحیح و مطابق با آن چیزی که مشخص شده هستند یا خیر
  • پاک سازی داده ها: هرگونه کاراکتر غیرقانونی را از داده ها حذف می کنیم.

افزونه های فیلتر در PHP

به طور پیش فرض PHP توابع و افزونه های بسیار زیادی برای اعتبار سنجی و یا پاک سازی داده ها دارد که باعث شده روند اعتبار سنجی و پاک سازی داده ها بسیار ساده تر و آسان تر بشود.

تابع filter_list می تواند لیست افزونه های فیلتر ارائه شده PHP را در اختیار ما قرار بدهد:

مثال

تماشا در حالت تمام صفحه

چرا باید از فیلتر ها در PHP استفاده کنیم ؟

بسیاری از وب اپلیکیشن ها داده ها و ورودی های خارجی دریافت می کنند.

  • ورودی های input در فرم ها
  • کوکی ها
  • داده های خدمات وب
  • متغیر های سرور
  • نتایج پرس و جو (query) مربوط به پایگاه داده

همانطور که اشاره شد بخاطر مسائل امنیتی و جلوگیری از بروز مشکلات در وب اپلیکیشن باید داده های خارجی را اعتبار سنجی کنیم.

تابع filter_var در PHP

تابع filter_var در PHP داده ها را اعتبار سنجی و پاکسازی می کند.

تابع filter_var دو پارامتر دارد که در پارامتر اول متغیر و در پارامتر دوم نوع فیلتر مورد نظر را میگیرد.

در ادامه مثال های بیشتری در این خصوص ذکر شده.

اعتبار سنجی رشته ها در PHP

در مثال زیر با استفاده از تابع filter_var() تمام تگ های HTML را پاک سازی و تبدیل به رشته می کنیم.

تماشا در حالت تمام صفحه

در مثال بالا اگر این پاک سازی را انجام ندهیم ، کد های HTML به سند تزریق شده و باگ XSS به وجود می آید.

اعتبار سنجی اعداد در PHP

در مثال زیر با استفاده از تابع filter_var بررسی می کنیم که مقدار متغیر $int یک عدد صحیح است یا خیر.

تماشا در حالت تمام صفحه

حل مشکل تابع filter_var با عدد 0

در مثال بالا اگر عدد ما برابر با 0 باشد خروجی “Integer is not valid” خواهد بود ، برای حل این مشکل از کد زیر استفاده کنید:

تماشا در حالت تمام صفحه

اعتبار سنجی آدرس IP در PHP

در مثال زیر با استفاده از تابع filter_var بررسی می کنیم که مقدار متغیر $ip یک آدرس IP معتبر است یا خیر:


این قسمت/بخشی از محتوا مخفی شده است و فقط برای اعضای وب سایت قابل مشاهده می باشد، لطفاً با حساب کاربری وارد شوید.

اعتبار سنجی ایمیل در PHP

برای انجام اینکار از تابع filter_var استفاده می کنیم ، این تابع ابتدا تمام کاراکتر های خاص م غیر مجاز متغیر $email را حذف می کند سپس بررسی می کند که ایمیل معتبر است یا خیر:

تماشا در حالت تمام صفحه

پاک سازی و اعتبار سنجی URL در PHP

در این مثال تابع filter_var() ابتدا تمامی کاراکتر های خاص و غیر مجاز URL را حذف می کند سپس بررسی می کند که آیا آدرس URL متغیر $url صحیح است یا خیر:


این قسمت/بخشی از محتوا مخفی شده است و فقط برای اعضای وب سایت قابل مشاهده می باشد، لطفاً با حساب کاربری وارد شوید.

آیا این مطلب برای شما مفید بود ؟

خیر
بله
بنر تبلیغاتی ج