ใน PHP สามารถใช้ฟังก์ชัน mb_substitute_character() เพื่อตั้งค่าหรือดึง substitution character ฟังก์ชันนี้ระบุอักขระที่ใช้แทนเมื่อ input character encoding ไม่ถูกต้อง หรือ character code ไม่อยู่ใน output character encoding
หมายเหตุ: อักขระที่ไม่ถูกต้องอาจถูกแทนที่ด้วย ไม่มี output, string, หรือ int value (Unicode character code value)
รูปแบบการใช้งาน (Syntax)
string|bool mb_substitute_character(string|int|null $char = null)
พารามิเตอร์
รับพารามิเตอร์เดียว $char ระบุค่า Unicode เป็น integer หรือ string ดังนี้:
- "none" – ไม่มี output (ตัดทิ้ง)
- "long" – แสดง character code value เช่น "U+3000, JIS+7E7E"
- "entity" – คืนค่า character entity เช่น "Ȁ"
ค่าที่คืนกลับ
หากตั้งค่า substitution character แล้ว จะคืน true เมื่อสำเร็จ ไม่เช่นนั้น false หากไม่ได้ตั้งค่า จะคืนค่าการตั้งค่าปัจจุบัน
หมายเหตุ: PHP 8.0 ไม่รองรับการส่ง empty string ให้ substitute_character แล้ว
ตัวอย่าง
<?php
// ตั้งค่า Unicode U+3013
mb_substitute_character(0x3013);
// รูปแบบ hexadecimal
mb_substitute_character("long");
// แสดงการตั้งค่าปัจจุบัน
echo mb_substitute_character();
?>
ผลลัพธ์
long