Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> การเขียนโปรแกรม >> PHP

ฟังก์ชัน htmlspecialchars() ใน PHP

คำอธิบาย

ฟังก์ชัน htmlspecialchars() ใช้แปลงอักขระพิเศษเป็น HTML entities เพื่อป้องกัน XSS (Cross-Site Scripting) และแสดงอักขระพิเศษในเบราว์เซอร์ได้ถูกต้อง

อักขระที่ถูกแปลง

  • & (ampersand) → &
  • " (double quote) → "
  • ' (single quote) → '
  • < (less than) → &lt;
  • > (greater than) → &gt;

รูปแบบการใช้งาน (Syntax)

htmlspecialchars(string $string, int $flags = ENT_COMPAT | ENT_HTML401, string $encoding = "UTF-8", bool $double_encode = true): string

พารามิเตอร์

  • string - สตริงที่ต้องการแปลง
  • flags - วิธีจัดการเครื่องหมายคำพูด และ encoding:
    • ENT_COMPAT - แปลงเฉพาะ double quote (ค่าเริ่มต้น)
    • ENT_QUOTES - แปลงทั้ง single และ double quote
    • ENT_NOQUOTES - ไม่แปลงเครื่องหมายคำพูด
  • encoding - ชุดอักขระ (ค่าเริ่มต้น UTF-8)
  • double_encode - true = แปลงทุกอย่าง (ค่าเริ่มต้น), false = ไม่แปลง entities ที่มีอยู่แล้ว

ค่าที่คืนกลับ (Return Value)

คืนค่าสตริงที่แปลงแล้ว

ตัวอย่างการใช้งาน

<?php
$res = htmlspecialchars("Demo", ENT_QUOTES);
echo $res;
?>

ผลลัพธ์

<a href='mylink' rel="nofollow"><strong>Demo</strong></a>

หมายเหตุ: ควรใช้ ENT_QUOTES และ UTF-8 เสมอเพื่อความปลอดภัยสูงสุด