บทช่วยสอนPHP

PHP HOME แนะนำ PHP การติดตั้ง PHP PHP ไวยากรณ์ ความคิดเห็น PHP ตัวแปร PHP PHP Echo / พิมพ์ ประเภทข้อมูล PHP PHP Strings หมายเลข PHP PHP คณิตศาสตร์ ค่าคงที่ PHP ตัวดำเนินการ PHP PHP If...Else...Elseif PHP Switch PHP Loops ฟังก์ชัน PHP PHP Arrays PHP Superglobals PHP RegEx

แบบฟอร์มPHP

การจัดการแบบฟอร์ม PHP การตรวจสอบแบบฟอร์ม PHP ต้องใช้แบบฟอร์ม PHP URL แบบฟอร์ม PHP/อีเมล แบบฟอร์ม PHP เสร็จสมบูรณ์

PHPขั้นสูง

วันที่และเวลา PHP รวม PHP การจัดการไฟล์ PHP ไฟล์ PHP เปิด/อ่าน สร้าง/เขียนไฟล์ PHP อัพโหลดไฟล์ PHP คุกกี้ PHP PHP Sessions ตัวกรอง PHP ตัวกรอง PHP ขั้นสูง ฟังก์ชันเรียกกลับของ PHP PHP JSON ข้อยกเว้น PHP

PHP OOP

PHP OOP คืออะไร คลาส PHP/วัตถุ ตัวสร้าง PHP PHP Destructor PHP Access Modifiers PHP Inheritance ค่าคงที่ PHP PHP Abstract Classes อินเทอร์เฟซ PHP PHP ลักษณะ PHP Static Methods PHP คุณสมบัติคงที่ PHP เนมสเปซ PHP Iterables

ฐานข้อมูลMySQL

ฐานข้อมูล MySQL MySQL Connect MySQL สร้าง DB MySQL สร้างตาราง MySQL แทรกข้อมูล MySQL รับ ID ล่าสุด MySQL แทรกหลายรายการ MySQL ที่เตรียมไว้ MySQL Select Data MySQL Where MySQL สั่งซื้อโดย MySQL ลบข้อมูล ข้อมูลอัพเดต MySQL MySQL Limit Data

PHP XML

PHP XML Parsers PHP SimpleXML Parser PHP SimpleXML - รับ PHP XML Expat PHP XML DOM

PHP - AJAX

บทนำ AJAX AJAX PHP ฐานข้อมูล AJAX AJAX XML AJAX ค้นหาสด AJAX โพล

ตัวอย่างPHP

ตัวอย่าง PHP PHP คอมไพเลอร์ แบบทดสอบ PHP แบบฝึกหัด PHP ใบรับรอง PHP

ข้อมูลอ้างอิงPHP

ภาพรวม PHP PHP Array ปฏิทิน PHP PHP วันที่ ไดเรกทอรี PHP ข้อผิดพลาด PHP ข้อยกเว้น PHP ระบบไฟล์ PHP ตัวกรอง PHP PHP FTP PHP JSON คีย์เวิร์ด PHP PHP Libxml PHP Mail PHP คณิตศาสตร์ PHP เบ็ดเตล็ด PHP MySQLi เครือข่าย PHP การควบคุมเอาต์พุต PHP PHP RegEx PHP SimpleXML PHP Stream PHP String การจัดการตัวแปร PHP PHP XML Parser PHP Zip เขตเวลา PHP

ตัวกรอง PHP


ตรวจสอบข้อมูล = ตรวจสอบว่าข้อมูลอยู่ในรูปแบบที่เหมาะสมหรือไม่

ข้อมูลการฆ่าเชื้อ = ลบอักขระที่ผิดกฎหมายออกจากข้อมูล


ส่วนขยายตัวกรอง PHP

ตัวกรอง PHP ใช้เพื่อตรวจสอบและฆ่าเชื้ออินพุตภายนอก

ส่วนขยายตัวกรอง PHP มีฟังก์ชันมากมายที่จำเป็นสำหรับการตรวจสอบการป้อนข้อมูลของผู้ใช้ และได้รับการออกแบบมาเพื่อให้การตรวจสอบความถูกต้องของข้อมูลทำได้ง่ายและรวดเร็วยิ่งขึ้น

ฟังก์ชันfilter_list()นี้สามารถใช้เพื่อแสดงสิ่งที่ส่วนขยายตัวกรอง PHP นำเสนอ:

ตัวอย่าง

<table>
  <tr>
    <td>Filter Name</td>
    <td>Filter ID</td>
  </tr>
  <?php
  foreach (filter_list() as $id =>$filter) {
    echo '<tr><td>' . $filter . '</td><td>' . filter_id($filter) . '</td></tr>';
  }
  ?>
</table>

ทำไมต้องใช้ตัวกรอง?

เว็บแอปพลิเคชันจำนวนมากได้รับอินพุตจากภายนอก อินพุต/ข้อมูลภายนอกสามารถ:

  • ผู้ใช้ป้อนข้อมูลจาก form
  • คุ้กกี้
  • ข้อมูลบริการเว็บ
  • ตัวแปรเซิร์ฟเวอร์
  • ผลการสืบค้นฐานข้อมูล

คุณควรตรวจสอบข้อมูลภายนอกเสมอ!
ข้อมูลที่ส่งไม่ถูกต้องอาจนำไปสู่ปัญหาด้านความปลอดภัยและทำให้หน้าเว็บของคุณเสียหาย!
ด้วยการใช้ตัวกรอง PHP คุณสามารถมั่นใจได้ว่าแอปพลิเคชันของคุณได้รับข้อมูลที่ถูกต้อง!



PHP filter_var () ฟังก์ชั่น

ฟัง ก์filter_var()ชั่นทั้งตรวจสอบและฆ่าเชื้อข้อมูล

ฟังก์ชันfilter_var()กรองตัวแปรเดียวด้วยตัวกรองที่ระบุ ใช้ข้อมูลสองส่วน:

  • ตัวแปรที่คุณต้องการตรวจสอบ
  • ประเภทของเช็คที่ใช้

ฆ่าเชื้อสตริง

ตัวอย่างต่อไปนี้ใช้filter_var()ฟังก์ชันเพื่อลบแท็ก HTML ทั้งหมดออกจากสตริง:

ตัวอย่าง

<?php
$str = "<h1>Hello World!</h1>";
$newstr = filter_var($str, FILTER_SANITIZE_STRING);
echo $newstr;
?>

ตรวจสอบจำนวนเต็ม

ตัวอย่างต่อไปนี้ใช้filter_var()ฟังก์ชันเพื่อตรวจสอบว่าตัวแปร $int เป็นจำนวนเต็มหรือไม่ หาก $int เป็นจำนวนเต็ม ผลลัพธ์ของโค้ดด้านล่างจะเป็น: "Integer is valid" หาก $int ไม่ใช่จำนวนเต็ม ผลลัพธ์จะเป็น: "Integer is not valid":

ตัวอย่าง

<?php
$int = 100;

if (!filter_var($int, FILTER_VALIDATE_INT) === false) {
  echo("Integer is valid");
} else {
  echo("Integer is not valid");
}
?>

เคล็ดลับ: filter_var() และปัญหากับ 0

ในตัวอย่างข้างต้น หาก $int ถูกตั้งค่าเป็น 0 ฟังก์ชันด้านบนจะคืนค่า "Integer is not valid" เพื่อแก้ปัญหานี้ ใช้รหัสด้านล่าง:

ตัวอย่าง

<?php
$int = 0;

if (filter_var($int, FILTER_VALIDATE_INT) === 0 || !filter_var($int, FILTER_VALIDATE_INT) === false) {
  echo("Integer is valid");
} else {
  echo("Integer is not valid");
}
?>

ตรวจสอบที่อยู่ IP

ตัวอย่างต่อไปนี้ใช้filter_var()ฟังก์ชันเพื่อตรวจสอบว่าตัวแปร $ip เป็นที่อยู่ IP ที่ถูกต้องหรือไม่:

ตัวอย่าง

<?php
$ip = "127.0.0.1";

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

ฆ่าเชื้อและตรวจสอบที่อยู่อีเมล

ตัวอย่างต่อไปนี้ใช้filter_var()ฟังก์ชันเพื่อลบอักขระที่ไม่ถูกต้องทั้งหมดออกจากตัวแปร $email ก่อน จากนั้นตรวจสอบว่าเป็นที่อยู่อีเมลที่ถูกต้องหรือไม่:

ตัวอย่าง

<?php
$email = "[email protected]";

// Remove all illegal characters from email
$email = filter_var($email, FILTER_SANITIZE_EMAIL);

// Validate e-mail
if (!filter_var($email, FILTER_VALIDATE_EMAIL) === false) {
  echo("$email is a valid email address");
} else {
  echo("$email is not a valid email address");
}
?>

ฆ่าเชื้อและตรวจสอบ URL

ตัวอย่างต่อไปนี้ใช้filter_var()ฟังก์ชันเพื่อลบอักขระที่ไม่ถูกต้องทั้งหมดออกจาก URL ก่อน จากนั้นตรวจสอบว่า $url เป็น URL ที่ถูกต้องหรือไม่:

ตัวอย่าง

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

// Remove all illegal characters from a url
$url = filter_var($url, FILTER_SANITIZE_URL);

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

อ้างอิงตัวกรอง PHP ที่สมบูรณ์

สำหรับการอ้างอิงที่สมบูรณ์ของฟังก์ชันตัวกรองทั้งหมด ไปที่การ อ้างอิงตัวกรอง PHP ทั้งหมดของเรา ตรวจสอบตัวกรองแต่ละตัวเพื่อดูว่ามีตัวเลือกและแฟล็กใดบ้าง

ข้อมูลอ้างอิงประกอบด้วยคำอธิบายสั้น ๆ และตัวอย่างการใช้งาน สำหรับแต่ละฟังก์ชัน!