PHP:فیلترهای پیشرفته در PHP

از ویکی کد
پرش به ناوبری پرش به جستجو

ارزیابی یک داده از نوع عدد صحیح در یک رنج (به انگلیسی: Range)

مثال زیر از تابع filter_var() برای بررسی اینکه آیا یک متغیر از نوع عدد صحیح است، و مقداری بین ۱ تا ۲۰۰ دارد استفاده می‌کند: [۱]

مثال

 1 <?php
 2 $int = 122;
 3 $min = 1;
 4 $max = 200;
 5 
 6 if (filter_var($int, FILTER_VALIDATE_INT, array("options" => array("min_range"=>$min, "max_range"=>$max))) === false) {
 7     echo("Variable value is not within the legal range");
 8 } else {
 9     echo("Variable value is within the legal range");
10 }
11 ?>

ارزیابی آدرس‌های IPv6

کد زیر از تابع filter_var() برای بررسی اینکه آیا متغیر $ip حاوی یک آدرس IPv6 معتبر است یا نه، استفاده می‌کند:

مثال

1 <?php
2 $ip = "2001:0db8:85a3:08d3:1319:8a2e:0370:7334";
3 
4 if (!filter_var($ip, FILTER_VALIDATE_IP, FILTER_FLAG_IPV6) === false) {
5     echo("$ip is a valid IPv6 address");
6 } else {
7     echo("$ip is not a valid IPv6 address");
8 }
9 ?>

ارزیابی یک آدرس اینترنتی - که می‌بایست شامل یک پرس‌وجوی متنی باشد

مثال زیر از تابع filter_var() برای بررسی اینکه آیا متغیر $URL حاوی یک آدرس اینترنتی، شامل یک پرس‌وجوی متنی (به انگلیسی: querystring) است یا نه، استفاده می‌کند:

مثال

1 <?php
2 $url = "https://www.w3schools.com";
3 
4 if (!filter_var($url, FILTER_VALIDATE_URL, FILTER_FLAG_QUERY_REQUIRED) === false) {
5     echo("$url is a valid URL with a query string");
6 } else {
7     echo("$url is not a valid URL with a query string");
8 }
9 ?>

حذف کاراکترهای با > ۱۲۷ مقدار اسکی (به انگلیسی: ASCII)

مثال زیر از تابع filter_var() برای حذف کاراکترهای نامعتبر از یک رشته متنی استفاده می‌کند. این تابع هم تمامی تگ‌های HTML، و هم تمامی کاراکترهایی که کد اسکی آنها بزرگتر از ۱۲۷ هستند را از رشته متنی پاک می‌کند:

مثال

1 <?php
2 $str = "<h1>Hello WorldÆØÅ!</h1>";
3 
4 $newstr = filter_var($str, FILTER_SANITIZE_STRING, FILTER_FLAG_STRIP_HIGH);
5 echo $newstr;
6 ?>

مرجع کامل فیلترها در PHP

برای مشاهده یک مرجع کامل از تمامی توابع فیلترها، به مرجع کامل ما در مورد فیلترها در PHP مراجعه کنید. هر فیلتر را برای مشاهده تنظیمات و علائمی که در دسترس هستند بررسی کنید.

منابع آموزشی