Hướng dẫn html special characters php - ký tự đặc biệt html php

❮ Tham chiếu chuỗi PHP

Thí dụ

Chuyển đổi các ký tự được xác định trước "" (lớn hơn) thành các thực thể HTML:

$str = "This is some bold text.";
echo htmlspecialchars($str);
?>

Đầu ra HTML của mã ở trên sẽ là (xem nguồn):

Đây là một số & lt; B & gt; Bold & lt;/b & gt; chữ.


This is some bold text.

Đầu ra trình duyệt của mã ở trên sẽ là:

Đây là một số văn bản táo bạo.

Hãy tự mình thử »


Định nghĩa và cách sử dụng

Hàm HTMLSpecialchars () chuyển đổi một số ký tự được xác định trước thành các thực thể HTML.

Các ký tự được xác định trước là:

  • & (ampersand) trở thành & amp;
  • "(trích dẫn kép) trở thành & quot;
  • '(trích dẫn đơn) trở thành '
  • < (less than) becomes <
  • > (lớn hơn) trở thành & gt;

Mẹo: Để chuyển đổi các thực thể HTML đặc biệt trở lại các ký tự, hãy sử dụng hàm htmlspecialchars_decode (). To convert special HTML entities back to characters, use the htmlspecialchars_decode() function.


Cú pháp

htmlspecialchars (chuỗi, cờ, bộ ký tự, double_encode)

Giá trị tham số

Tham sốSự mô tả
sợi dâyYêu cầu. Chỉ định chuỗi để chuyển đổi
cờKhông bắt buộc. Chỉ định cách xử lý báo giá, mã hóa không hợp lệ và loại tài liệu đã sử dụng.

Các kiểu báo giá có sẵn là:

  • Ent_compat - mặc định. Mã hóa chỉ có dấu ngoặc kép
  • Ent_quotes - mã hóa các trích dẫn kép và đơn
  • Ent_noquotes - không mã hóa bất kỳ trích dẫn nào

Mã hóa không hợp lệ:

  • ENT_ignore - Bỏ qua mã hóa không hợp lệ thay vì có hàm trả về một chuỗi trống. Nên tránh, vì nó có thể có ý nghĩa bảo mật.
  • ENT_Subst acad - Thay thế mã hóa không hợp lệ cho một bộ ký tự được chỉ định bằng ký tự thay thế Unicode U+FFFD (UTF -8) hoặc &#FFFD; Thay vì trả về một chuỗi trống.
  • Ent_disallowed - Thay thế các điểm mã không hợp lệ trong docType được chỉ định bằng ký tự thay thế Unicode U+FFFD (UTF -8) hoặc &#FFFD;

Các cờ bổ sung để chỉ định doctype đã sử dụng:

  • ENT_HTML401 - Mặc định. Xử lý mã là HTML 4.01
  • ENT_HTML5 - Mã xử lý dưới dạng HTML 5
  • ENT_XML1 - Mã xử lý dưới dạng XML 1
  • ENT_XHTML - Mã xử lý dưới dạng XHTML
tập hợp nhân vậtKhông bắt buộc. Một chuỗi chỉ định sử dụng bộ ký tự nào.

Giá trị được phép là:

  • UTF -8 - Mặc định. Ascii tương thích đa byte unicode
  • ISO-8859-1-Tây Âu
  • ISO-8859-15-Tây Âu (thêm dấu hiệu Euro + chữ cái Pháp và Phần Lan bị thiếu trong ISO-8859-1)
  • CP866 - Charset Cyrillic dành riêng cho DOS
  • CP1251 - Charset Cyrillic dành riêng cho Windows
  • CP1252 - Charset cụ thể của Windows cho Tây Âu
  • Koi8 -r - Nga
  • Big5 - Trung Quốc truyền thống, chủ yếu được sử dụng ở Đài Loan
  • GB2312 - Bộ nhân vật tiêu chuẩn quốc gia đơn giản hóa
  • BIG5 -HKSCS - Big5 với phần mở rộng Hồng Kông
  • Shift_Jis - Nhật Bản
  • EUC -JP - Nhật Bản
  • Macroman - Bộ ký tự được sử dụng bởi Mac OS

LƯU Ý: Các bộ ký tự không được công nhận sẽ bị bỏ qua và thay thế bằng ISO-8859-1 trong các phiên bản trước PHP 5.4. Kể từ Php 5.4, nó sẽ bị bỏ qua thay thế bởi UTF-8. Unrecognized character-sets will be ignored and replaced by ISO-8859-1 in versions prior to PHP 5.4. As of PHP 5.4, it will be ignored an replaced by UTF-8.

double_encodeKhông bắt buộc. Một giá trị boolean chỉ định có nên mã hóa các thực thể HTML hiện có hay không.
  • Đúng - Mặc định. Sẽ chuyển đổi mọi thứ
  • Sai - sẽ không mã hóa các thực thể HTML hiện có


Chi tiết kỹ thuật

Giá trị trở lại:Trả về chuỗi được chuyển đổi

Nếu chuỗi chứa mã hóa không hợp lệ, nó sẽ trả về một chuỗi trống, trừ khi các cờ ent_ignore hoặc ent_subst acad được đặt

Phiên bản PHP:4+
Changelog:Php 5.6-Đã thay đổi giá trị mặc định cho tham số bộ ký tự thành giá trị của ký tự mặc định (trong cấu hình) .php 5.4-đã thay đổi giá trị mặc định cho tham số bộ ký tự thành UTF-8. Php 5.4 - Đã thêm ent_subst acad, ent_disallowed, ent_html401, ent_html5, ent_xml1 và ent_xhtmlphp 5.3 - Đã thêm ent_ignore hằng.php 5.2.3 - Đã thêm tham số double_encode.
PHP 5.4 - Changed the default value for the character-set parameter to UTF-8.
PHP 5.4 - Added ENT_SUBSTITUTE, ENT_DISALLOWED, ENT_HTML401, ENT_HTML5, ENT_XML1 and ENT_XHTML
PHP 5.3 - Added ENT_IGNORE constant.
PHP 5.2.3 - Added the double_encode parameter.
PHP 4.1 - Added the character-set parameter.

Nhiều ví dụ hơn

Thí dụ

Chuyển đổi một số ký tự được xác định trước thành các thực thể HTML:

$str = "Jane & 'Tarzan'";
echo htmlspecialchars($str, ENT_COMPAT); // Will only convert double quotes
echo "
";
echo htmlspecialchars($str, ENT_QUOTES); // Converts double and single quotes
echo "
";
echo htmlspecialchars($str, ENT_NOQUOTES); // Does not convert any quotes
?>

Đầu ra HTML của mã ở trên sẽ là (xem nguồn):

Jane & amp; 'Tarzan' Jane & amp; ' Tarzan ' Jane & amp; 'Người rừng'


Jane & 'Tarzan'

Jane & 'Tarzan'

Jane & 'Tarzan'

Đầu ra trình duyệt của mã ở trên sẽ là:

Jane & 'Tarzan' Jane & 'Tarzan' Jane & 'Tarzan'
Jane & 'Tarzan'
Jane & 'Tarzan'

Hãy tự mình thử »

Thí dụ

Định nghĩa và cách sử dụng

$str = 'I love "PHP".';
echo htmlspecialchars($str, ENT_QUOTES); // Converts double and single quotes
?>

Đầu ra HTML của mã ở trên sẽ là (xem nguồn):

Hàm HTMLSpecialchars () chuyển đổi một số ký tự được xác định trước thành các thực thể HTML.


I love "PHP".

Đầu ra trình duyệt của mã ở trên sẽ là:

Các ký tự được xác định trước là:

Hãy tự mình thử »


❮ Tham chiếu chuỗi PHP