Làm cách nào để chuyển đổi các ký tự đặc biệt thành UTF 8 trong PHP?
chuỗi htmlspecialchars ( chuỗi Show Gọi htmlspecialchars() là đủ nếu mã hóa hỗ trợ tất cả các ký tự trong chuỗi đầu vào (chẳng hạn như UTF-8 nhưng cả ISO-8859-1 trên đầu vào chỉ ISO-8859-1). htmlentities() chỉ cần được gọi nếu mã hóa đầu ra không hỗ trợ tất cả các ký tự trong chuỗi đầu vào Chức năng này hữu ích trong việc ngăn văn bản do người dùng cung cấp chứa đánh dấu HTML, chẳng hạn như trong bảng tin hoặc ứng dụng sổ khách Các bản dịch được thực hiện là
Thông sốstring Chuỗi đang được chuyển đổi flags Mặt nạ bit của một hoặc nhiều cờ sau, chỉ định cách xử lý dấu ngoặc kép, chuỗi đơn vị mã không hợp lệ và loại tài liệu được sử dụng. Mặc định là ENT_COMPAT. ENT_HTML401 flags hằng số Tên hằng Mô tả_______9Sẽ chuyển đổi dấu ngoặc kép và để nguyên dấu ngoặc đơn. ENT_QUOTES Sẽ chuyển đổi cả dấu nháy kép và dấu nháy đơn. ENT_NOQUOTES Sẽ không chuyển đổi cả dấu ngoặc kép và dấu ngoặc đơn. $flags 2Thầm lặng loại bỏ các chuỗi đơn vị mã không hợp lệ thay vì trả về một chuỗi trống. Sử dụng cờ này không được khuyến khích vì nó. $flags 3Thay thế chuỗi đơn vị mã không hợp lệ bằng Ký tự thay thế Unicode U+FFFD (UTF-8) hoặc FFFD; . $flags 4Thay thế các điểm mã không hợp lệ cho loại tài liệu nhất định bằng Ký tự thay thế Unicode U+FFFD (UTF-8) hoặc FFFD; . Điều này có thể hữu ích, ví dụ, để đảm bảo định dạng tốt của các tài liệu XML với nội dung bên ngoài được nhúng. $flags 5Xử lý mã dưới dạng HTML 4. 01. $flags 6Xử lý mã dưới dạng XML 1. $flags 7Xử lý mã dưới dạng XHTML. $flags 8Xử lý mã dưới dạng HTML 5. $flags 9Xác định mã hóa được sử dụng trong chuyển đổi. Nếu bỏ qua, giá trị mặc định cho đối số này là ISO-8859-1 trong các phiên bản PHP trước 5. 4. 0 và UTF-8 từ PHP 5. 4. 0 trở đi Đối với mục đích của chức năng này, mã hóa ISO-8859-1, ISO-8859-15, UTF-8, cp866, cp1251, cp1252 và KOI8-R có hiệu quả tương đương, miễn là bản thân Các bộ ký tự sau được hỗ trợ Bộ ký tự được hỗ trợBộ ký tựBí danhMô tảISO-8859-1ISO8859-1Tây Âu, Latinh-1. ISO-8859-5ISO8859-5Bộ ký tự cyrillic ít được sử dụng (Latin/Cyrillic). ISO-8859-15ISO8859-15Tây Âu, Latinh-9. Thêm ký hiệu Euro, chữ cái tiếng Pháp và tiếng Phần Lan bị thiếu trong tiếng Latin-1 (ISO-8859-1). Unicode 8-bit nhiều byte tương thích UTF-8ASCII. cp866ibm866, bộ ký tự Cyrillic dành riêng cho 866DOS. cp1251Windows-1251, win-1251, 1251Bộ ký tự Cyrillic dành riêng cho Windows. cp1252Windows-1252, 1252Bộ ký tự dành riêng cho Windows cho Tây Âu. KOI8-Rkoi8-ru, koi8rTiếng Nga. BIG 5950 Tiếng Trung phồn thể, chủ yếu được sử dụng ở Đài Loan. GB2312936Tiếng Trung giản thể, bộ ký tự chuẩn quốc gia. BIG5-HKSCSBig5 với phần mở rộng Hồng Kông, tiếng Trung phồn thể. Shift_JISSJIS, SJIS-win, cp932, 932JapaneseEUC-JPEUCJP, eucJP-winJapaneseMacRomanCharset đã được Mac OS sử dụng. ''Một chuỗi trống kích hoạt phát hiện từ mã hóa tập lệnh (Zend multibyte) và ngôn ngữ hiện tại (xem nl_langinfo() và setlocale()), theo thứ tự này. Không được khuyến khích
$encoding 1Khi tắt Giá trị trả vềChuỗi đã chuyển đổi Nếu đầu vào Nhật ký thay đổiPhiên bảnMô tả5. 4. 0Giá trị mặc định cho tham số$flags 9 đã được thay đổi thành UTF-8. 5. 4. 0Các hằng số $flags 3, $flags 4, $flags 5, $flags 6, $flags 7 và $flags 8 đã được thêm vào. 5. 3. 0Hằng số $flags 2 đã được thêm vào. 5. 2. 3 Tham số $encoding 1 đã được thêm vào. 4. 1. 0Tham số $flags 9 đã được thêm vàoví dụVí dụ #1 htmlspecialchars() ví dụ
ghi chú
|