صافی های تعریف شده توسط خودمان

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

بعد از تعریف تابع خودمان باید با استفاده از FILTER_CALLBACK که به عنوان پارامتر دوم توابع فیلتر است مشخص کنیم که نوع صافی مصرفی ، تابع تعریف شده توسط خودمان است.

مثال: در مثال زیر٫ همه ی کاراکترهای "_" به خط فاصله تبدیل می شود:

<?php
function convertSpace($string)
{
return str_replace("_", " ", $string);
}

$string = "Peter_is_a_great_guy!";

echo filter_var($string, FILTER_CALLBACK,array("options"=>"convertSpace"));
?>

خروجی کد بالا:

Peter is a great guy!

توضیح مثال:

مثال بالا همه ی کاراکترهای "_" را به خط فاصله تبدیل می کند:

  1. یک تابع برای جایگزین کردن کاراکتر"_" به خط فاصه ایجاد می کند
  2. تابع ()filter_var را همراه با فیلتر FILTER_CALLBACK و یک آرایه شامل تابع مان فراخوانی می کند

آموزش های مرتبط

آموزش PHP-فیلتر ورودی ها