Hướng dẫn htmlspecialchars php - htmlspecialchars php

  • Trang chủ
  • Phát Triển Web
  • PHP
  • Ha htmlspecialchars () trong php

Hướng dẫn cách sử dụng ha

Tác dụng của ha htmlspecialchars ()

Hàm htmlspecialchars() chuyển đổi các ký tự có ý nghĩa đặc biệt trong bối cảnh HTML thành các thực thể HTML tương đương của chúng. Các ký tự sau được coi là đặc biệt:

  • & (ampersand) được chuyển đổi thành &
  • " (trích dẫn kép) được chuyển đổi thành ", trừ khi ENT_NOQUOTES được đặt.
  • ' (trích dẫn đơn) được chuyển đổi thành ' (đối với
    pack \"bag & baggage\".";
    
    // Convert only <, > & and double-quotes
    $a = htmlspecialchars($str);
    echo $a; // Let's pack "bag & baggage".
    
    // Convert all special characters
    $b = htmlspecialchars($str, ENT_QUOTES);
    echo $b; // Let's pack "bag & baggage".
    
    // Convert single quotes to named entity
    $c = htmlspecialchars($str, ENT_QUOTES | ENT_HTML5);
    echo $c; // Let's pack "bag & baggage".
    ?>
    0, đây là mặc định) hoặc
    pack \"bag & baggage\".";
    
    // Convert only <, > & and double-quotes
    $a = htmlspecialchars($str);
    echo $a; // Let's pack "bag & baggage".
    
    // Convert all special characters
    $b = htmlspecialchars($str, ENT_QUOTES);
    echo $b; // Let's pack "bag & baggage".
    
    // Convert single quotes to named entity
    $c = htmlspecialchars($str, ENT_QUOTES | ENT_HTML5);
    echo $c; // Let's pack "bag & baggage".
    ?>
    1 (đối với
    pack \"bag & baggage\".";
    
    // Convert only <, > & and double-quotes
    $a = htmlspecialchars($str);
    echo $a; // Let's pack "bag & baggage".
    
    // Convert all special characters
    $b = htmlspecialchars($str, ENT_QUOTES);
    echo $b; // Let's pack "bag & baggage".
    
    // Convert single quotes to named entity
    $c = htmlspecialchars($str, ENT_QUOTES | ENT_HTML5);
    echo $c; // Let's pack "bag & baggage".
    ?>
    2,
    pack \"bag & baggage\".";
    
    // Convert only <, > & and double-quotes
    $a = htmlspecialchars($str);
    echo $a; // Let's pack "bag & baggage".
    
    // Convert all special characters
    $b = htmlspecialchars($str, ENT_QUOTES);
    echo $b; // Let's pack "bag & baggage".
    
    // Convert single quotes to named entity
    $c = htmlspecialchars($str, ENT_QUOTES | ENT_HTML5);
    echo $c; // Let's pack "bag & baggage".
    ?>
    3 hoặc
    pack \"bag & baggage\".";
    
    // Convert only <, > & and double-quotes
    $a = htmlspecialchars($str);
    echo $a; // Let's pack "bag & baggage".
    
    // Convert all special characters
    $b = htmlspecialchars($str, ENT_QUOTES);
    echo $b; // Let's pack "bag & baggage".
    
    // Convert single quotes to named entity
    $c = htmlspecialchars($str, ENT_QUOTES | ENT_HTML5);
    echo $c; // Let's pack "bag & baggage".
    ?>
    4), nhưng chỉ khi
    pack \"bag & baggage\".";
    
    // Convert only <, > & and double-quotes
    $a = htmlspecialchars($str);
    echo $a; // Let's pack "bag & baggage".
    
    // Convert all special characters
    $b = htmlspecialchars($str, ENT_QUOTES);
    echo $b; // Let's pack "bag & baggage".
    
    // Convert single quotes to named entity
    $c = htmlspecialchars($str, ENT_QUOTES | ENT_HTML5);
    echo $c; // Let's pack "bag & baggage".
    ?>
    5 được đặt.
  • pack \"bag & baggage\".";
    
    // Convert only <, > & and double-quotes
    $a = htmlspecialchars($str);
    echo $a; // Let's pack "bag & baggage".
    
    // Convert all special characters
    $b = htmlspecialchars($str, ENT_QUOTES);
    echo $b; // Let's pack "bag & baggage".
    
    // Convert single quotes to named entity
    $c = htmlspecialchars($str, ENT_QUOTES | ENT_HTML5);
    echo $c; // Let's pack "bag & baggage".
    ?>
    6 (ít hơn) được chuyển đổi thành
    pack \"bag & baggage\".";
    
    // Convert only <, > & and double-quotes
    $a = htmlspecialchars($str);
    echo $a; // Let's pack "bag & baggage".
    
    // Convert all special characters
    $b = htmlspecialchars($str, ENT_QUOTES);
    echo $b; // Let's pack "bag & baggage".
    
    // Convert single quotes to named entity
    $c = htmlspecialchars($str, ENT_QUOTES | ENT_HTML5);
    echo $c; // Let's pack "bag & baggage".
    ?>
    6
  • pack \"bag & baggage\".";
    
    // Convert only <, > & and double-quotes
    $a = htmlspecialchars($str);
    echo $a; // Let's pack "bag & baggage".
    
    // Convert all special characters
    $b = htmlspecialchars($str, ENT_QUOTES);
    echo $b; // Let's pack "bag & baggage".
    
    // Convert single quotes to named entity
    $c = htmlspecialchars($str, ENT_QUOTES | ENT_HTML5);
    echo $c; // Let's pack "bag & baggage".
    ?>
    8 (lớn hơn) được chuyển đổi thành
    pack \"bag & baggage\".";
    
    // Convert only <, > & and double-quotes
    $a = htmlspecialchars($str);
    echo $a; // Let's pack "bag & baggage".
    
    // Convert all special characters
    $b = htmlspecialchars($str, ENT_QUOTES);
    echo $b; // Let's pack "bag & baggage".
    
    // Convert single quotes to named entity
    $c = htmlspecialchars($str, ENT_QUOTES | ENT_HTML5);
    echo $c; // Let's pack "bag & baggage".
    ?>
    8

Hàm này thường đảo ngược hiệu ứng của hàm htmlspecialchars()0.

Bảng sau đây tóm tắt các chi tiết kỹ thuật của chức năng này.

Giá trị trở lại:Trả về chuỗi đã chuyển đổi. Nếu chuỗi đầu vào chứa chuỗi mã không hợp lệ trong ký tự đã cho, nó sẽ trả về một chuỗi trống, trừ khi các cờ htmlspecialchars()1 hoặc htmlspecialchars()2 được đặt.
Version:Php 4+


Cú pháp

Cú pháp cơ bản của hàm htmlspecialchars() được đưa ra với:

HTMLSPECIALCHARS (Chuỗi, Cờ, Charset, Double_encode);(string, flags, charset, double_encode);

Ví dụ sau đây cho thấy hàm htmlspecialchars() trong hành động.

Ví dụ

amazing story.";

// Converting the string
echo htmlspecialchars($str);
?>

Đầu ra của ví dụ trên sẽ là (xem nguồn để có được ý tưởng):

Đó là một câu chuyện tuyệt vời.

Tuy nhiên, trong trình duyệt, bạn sẽ thấy một cái gì đó như thế này:

Đó là một câu chuyện tuyệt vời.amazing story.

Tuy nhiên, trong trình duyệt, bạn sẽ thấy một cái gì đó như thế này: The htmlspecialchars() is identical to htmlspecialchars()6 in all ways, except that htmlspecialchars() only replaces &,

pack \"bag & baggage\".";

// Convert only <, > & and double-quotes
$a = htmlspecialchars($str);
echo $a; // Let's pack "bag & baggage".

// Convert all special characters
$b = htmlspecialchars($str, ENT_QUOTES);
echo $b; // Let's pack "bag & baggage".

// Convert single quotes to named entity
$c = htmlspecialchars($str, ENT_QUOTES | ENT_HTML5);
echo $c; // Let's pack "bag & baggage".
?>
6, and
pack \"bag & baggage\".";

// Convert only <, > & and double-quotes
$a = htmlspecialchars($str);
echo $a; // Let's pack "bag & baggage".

// Convert all special characters
$b = htmlspecialchars($str, ENT_QUOTES);
echo $b; // Let's pack "bag & baggage".

// Convert single quotes to named entity
$c = htmlspecialchars($str, ENT_QUOTES | ENT_HTML5);
echo $c; // Let's pack "bag & baggage".
?>
8, with option for single and double quotes. But htmlspecialchars()6 replaces all characters which can be represented by HTML character entity.

Lưu ý: htmlspecialchars() giống hệt với htmlspecialchars()6 theo mọi cách, ngoại trừ htmlspecialchars() chỉ thay thế &,

pack \"bag & baggage\".";

// Convert only <, > & and double-quotes
$a = htmlspecialchars($str);
echo $a; // Let's pack "bag & baggage".

// Convert all special characters
$b = htmlspecialchars($str, ENT_QUOTES);
echo $b; // Let's pack "bag & baggage".

// Convert single quotes to named entity
$c = htmlspecialchars($str, ENT_QUOTES | ENT_HTML5);
echo $c; // Let's pack "bag & baggage".
?>
6 và
pack \"bag & baggage\".";

// Convert only <, > & and double-quotes
$a = htmlspecialchars($str);
echo $a; // Let's pack "bag & baggage".

// Convert all special characters
$b = htmlspecialchars($str, ENT_QUOTES);
echo $b; // Let's pack "bag & baggage".

// Convert single quotes to named entity
$c = htmlspecialchars($str, ENT_QUOTES | ENT_HTML5);
echo $c; // Let's pack "bag & baggage".
?>
8, với tùy chọn cho trích dẫn đơn và đôi. Nhưng htmlspecialchars()6 thay thế tất cả các ký tự có thể được biểu diễn bởi thực thể ký tự HTML.
You can use the &2 function to return the translation table that is used internally for the htmlspecialchars() and htmlspecialchars()6 functions.


Mẹo: Bạn có thể sử dụng hàm &2 để trả về bảng dịch được sử dụng nội bộ cho các hàm htmlspecialchars() và htmlspecialchars()6.

Thông số

Hàm htmlspecialchars() chấp nhận các tham số sau.Tham số
Sự mô tảsợi dây
Yêu cầu. Chỉ định chuỗi để chuyển đổi.

cờ

Không bắt buộc. Chỉ định cách xử lý các trích dẫn, chuỗi mã không hợp lệ và loại tài liệu nào sẽ sử dụng. Bạn có thể chỉ định một hoặc nhiều cờ sau.

  • Các hằng số cờ có sẵn để báo giá xử lý là: – Converts double-quotes and leave single-quotes unconverted.
  • ENT_COMPAT-Chuyển đổi các trích dẫn kép và để lại các trình điều khiển đơn không được chuyển đổi. – Convert both double and single quotes.
  • ENT_QUOTES - Chuyển đổi cả trích dẫn kép và đơn. – Leave both double and single quotes unconverted.

ENT_NOOQUOTES - Để lại cả trích dẫn kép và đơn không được chuyển đổi.

  • Các hằng số cờ có sẵn để xử lý các chuỗi mã không hợp lệ là: – Silently ignores invalid code sequences instead of returning an empty string. Avoid using this flag as it may have security implications.
  • ENT_IGNORE - âm thầm bỏ qua các chuỗi mã không hợp lệ thay vì trả về một chuỗi trống. Tránh sử dụng cờ này vì nó có thể có ý nghĩa bảo mật. – Replaces invalid code sequences with a Unicode Replacement Character U+FFFD (UTF-8) or instead of returning an empty string.
  • ENT_SUBSTICE-Thay thế các chuỗi mã không hợp lệ bằng ký tự thay thế Unicode U+FFFD (UTF-8) hoặc thay vì trả về một chuỗi trống. – Replaces code sequences that are invalid for the specified document type with a Unicode Replacement Character U+FFFD (UTF-8) or instead of leaving them as is.

ENT_DISALLED-Thay thế các chuỗi mã không hợp lệ cho loại tài liệu được chỉ định bằng ký tự thay thế Unicode U+FFFD (UTF-8) hoặc thay vì để chúng như hiện tại.

  • Các hằng số cờ có sẵn để chỉ định các loại tài liệu là: – Handle code as HTML 4.01.
  • ENT_HTML401 - Mã xử lý là HTML 4.01. – Handle code as HTML 5.
  • ENT_HTML5 - Mã xử lý là HTML 5. – Handle code as XML 1.
  • ENT_XML1 - Mã xử lý dưới dạng XML 1. – Handle code as XHTML.

ENT_XHTML - Mã xử lý dưới dạng XHTML.

Giá trị mặc định cho tham số này là &6.

Charset

  • Không bắt buộc. Chỉ định cách sử dụng ký tự. CharSets được hỗ trợ là: – ASCII compatible multi-byte 8-bit Unicode.
  • UTF-8-unicode 8 bit tương thích ASCII. – Western European, Latin-1.
  • ISO-8859-1-Tây Âu, Latin-1. – Little used cyrillic charset (Latin/Cyrillic).
  • ISO-8859-5-Charset Cyrillic ít sử dụng (Latin/Cyrillic). Western European, Latin-9. Adds the Euro sign, French and Finnish letters missing in Latin-1 (ISO-8859-1).
  • ISO-8859-15 Tây Âu, Latin-9. Thêm dấu hiệu đồng euro, các chữ cái Pháp và Phần Lan bị thiếu trong Latin-1 (ISO-8859-1). – DOS-specific Cyrillic charset.
  • CP866-Charset Cyrillic dành riêng cho DOS. – Windows-specific Cyrillic charset.
  • CP1251-Charset Cyrillic dành riêng cho Windows. – Windows specific charset for Western European.
  • CP1252 - Charset cụ thể của Windows cho Tây Âu. – Russian.
  • Koi8-r-Nga. – Traditional Chinese, mainly used in Taiwan.
  • Big5 - Trung Quốc truyền thống, chủ yếu được sử dụng ở Đài Loan. – Simplified Chinese, national standard character set.
  • GB2312 - Bộ nhân vật tiêu chuẩn quốc gia đơn giản hóa. – Big5 with Hong Kong extensions, Traditional Chinese.
  • BIG5-HKSCS-Big5 với phần mở rộng Hồng Kông, Trung Quốc truyền thống. – Japanese.
  • Shift_Jis - Nhật Bản. – Japanese.
  • EUC-JP-Nhật Bản. – Charset that was used by Mac OS.

Macroman - Charset được sử dụng bởi Mac OS.

Nếu tham số này bị bỏ qua, nó mặc định là giá trị của tùy chọn cấu hình &7 (bên trong tệp php.ini).double_encode


Không bắt buộc. Một giá trị boolean chỉ định xem có nên mã hóa các thực thể HTML hiện có hay không. Các giá trị có thể là &8 và &9. Giá trị mặc định là &8 chuyển đổi mọi thứ.

Nhiều ví dụ hơn

Đây là một số ví dụ khác cho thấy chức năng htmlspecialchars() thực sự hoạt động như thế nào:

Ví dụ

pack \"bag & baggage\".";

// Convert only <, > & and double-quotes
$a = htmlspecialchars($str);
echo $a; // Let's pack "bag & baggage".

// Convert all special characters
$b = htmlspecialchars($str, ENT_QUOTES);
echo $b; // Let's pack "bag & baggage".

// Convert single quotes to named entity
$c = htmlspecialchars($str, ENT_QUOTES | ENT_HTML5);
echo $c; // Let's pack "bag & baggage".
?>

Đầu ra của ví dụ trên sẽ là (xem nguồn để có được ý tưởng):

Bài viết này đã giúp ích cho bạn?

Bài viết mới