‎‎فيلترهاي پيشرفتهPHP Filters Advanced -‎

Previous >    <Next  

‎دراين بخش براي كنترل اطلاعات از فيلتر هاي پيشرفته تري نسبت به بخش قبلي استفاده مي نمائيم. ‎اين موارد براي داده ها باساختار پيچيده تر استفاده ميگردد.

‎‎اعتبارسنجي عددinteger با محدوديت حداقل و حداكثر

‎Validate an Integer Within a Range‎

‎مثال ـ در برنامه زير يك متغير با نام ‎$int‎‎داراي مينيمم وماكزيممم توسط تابع ‎filter_var( )‎‎اعتبار سنجي ميگردد .يعني همinteger بودن وهم كنترل مقدار در ‎محدوده قابل قبول.

<?php 
$int = 122;
$min = 1;
$max = 200;

if  (filter_var($int, FILTER_VALIDATE_INT, array("options" => array("min_range"=>$min, "max_range"=>$max))) === false) {
  echo("Variable value is not within the legal range");
} else {
  echo("Variable value is within the legal range");
}
?> 

--(go to editor for change code and run)

‎اگر بدستور كنترلي تابع توجه كنيد، يك پارامتر نسبت به قبل بيشتر دارد .اين پارامتر يك آرايه ‎ميباشد كه شامل مقادير حداقل وحد اكثر است .نام آرايه‎"options‎"‎ميباشد.

‎نكته برنامه فوق در مورد عدم صحيح بودن‎$int‎ پيغامي صادر نميكند .خودتان ‎ميتوانيد در اديتور اين را آزمايش كنيد .اما متن اصلي مدعي كنترل نوع ومحدوه ميباشد.

‎مثال ـ در مثال زير كنترل صحيح بودن‎$int‎ بررسي شده وپيغام مناسب داده ميشود . ‎برنامه فوق مشكل مثال بالا را برطرف نموده است.

<?php 
$int = "0";
$min = -1;
$max = 200;
if  (filter_var($int, FILTER_VALIDATE_INT) === 0 || !filter_var($int, FILTER_VALIDATE_INT) === false){ 
if  (filter_var($int, FILTER_VALIDATE_INT, array("options" => array("min_range"=>$min, "max_range"=>$max))) === false) {
  echo("Variable value is not within the legal range");
} else {
  echo("Variable value is within the legal range");
}
}
else { echo "var is not integer";}
?>	  

--(go to editor for change code and run)

‎‎اعتبار سنجيValidta IPv6 Address -‎ IPv6

‎درمثال زير‎ مثال -IPv6 با دو فيلتر توسط تابع ‎filter_var( )‎ اعتبار سنجي ميشود . ‎اين دو فياتر عبارتند از FILTER_FLAG_IPV6 , FILTER_VALIDATE_IP

<?php 
$ip = "2001:0db8:85a3:08d3:1319:8a2e:0370:7334";

if  (!filter_var($ip, FILTER_VALIDATE_IP, FILTER_FLAG_IPV6) === false) {
  echo("$ip is a valid IPv6 address");
} else {
  echo("$ip is not a valid IPv6 address");
}
?> 

--(go to editor for change code and run)

‎‎اعتبار سنجيURL عبلرت درخواستيValidte URL -‎Must Contain QueryString -‎

‎مثال ـ در مثال زير از تابع‎filter_var( )‎ براي كنترل متغير ‎$url‎‎كه بايد شاملQueryString ‎باشد، استفاده شده است.

<?php 
$url = "https://www.w3schools.com";

if  (!filter_var($url, FILTER_VALIDATE_URL, FILTER_FLAG_QUERY_REQUIRED) === false) {
  echo("$url is a valid URL with a query string");
} else {
  echo("$url is not a valid URL with a query string");
}
?> 

--(go to editor for change code and run)

‎‎حذف كراكترهاي اسكي بزرگتر از127

‎Remove Charchters With ASCII Value>127‎

‎مثال ـ در مثال زير براي حذف يا پاكسازي ‎كراكترهاي اسكي برزگتر از127 ‎يك عبارت، از تابع‎filter_var( )‎ با دو فيلتراستفاده شدهاست.

<?php 
$str = "<h1>Hello World???!</h1>";

$newstr = filter_var($str, FILTER_SANITIZE_STRING, FILTER_FLAG_STRIP_HIGH);
echo $newstr;
?> 

--(go to editor for change code and run)

‎‎توجه ـ براي اطلاعات از توابع فيلترينگ به مرجع كامل آن بسايتW3schools مراجعه نمائيد.


Previous >    <Next