คำอธิบาย
ฟังก์ชัน htmlspecialchars() ใช้แปลงอักขระพิเศษเป็น HTML entities เพื่อป้องกัน XSS (Cross-Site Scripting) และแสดงอักขระพิเศษในเบราว์เซอร์ได้ถูกต้อง
อักขระที่ถูกแปลง
&(ampersand) →&"(double quote) →"'(single quote) →'<(less than) →<>(greater than) →>
รูปแบบการใช้งาน (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 เสมอเพื่อความปลอดภัยสูงสุด