Hàm htmlentities(), html_entity_decode() trong PHP

Hàm htmlentities() và html_entity_decode() được sử dụng để làm việc với các ký tự HTML. Vậy làm thế nào để sử 2 hàm này trong PHP một cách dễ dàng. Hãy tìm hiểu khái niệm và cách dùng qua bài dưới đây.

Hàm htmlentities() trong PHP

Hàm htmlentities() đượng dùng để chuyển đổi các ký tự thành ký tự HTML entiies.

HTML Entities là gì?

HTML entiies là ký tự thực thể được sử dụng để hiển thị các biểu tượng, ký tự trong HTML.

Giả sử như bạn đang muốn viết dấu < hoặc > so sánh hai số nhưng lúc này trình duyệt cho rằng đó là một tag của HTML. Để tránh tình trạng này cần phải dùng tới HTML entiies.

Khi viết sẽ có dạng:

&name;
&#number;

Một số ký tự thực thể trong HTML:

thuc-the-html

Cú pháp htmlentities:

htmlentities( $string, $flags = ENT_COMPAT | ENT_HTML401, $encoding = ini_get("default_charset");

Giải thích:

  • $string: Là chuỗi cần truyền vào
  • $flags: truyền vào một số giá trị như:
    • ENT_COMPAT.
    • ENT_QUOTES.
    • ENT_NOQUOTES.
    • ENT_IGNORE .
    • ENT_SUBSTITUTE.
    • ENT_DISALLOWED.
    • ENT_HTML401.
    • ENT_XML1.
    • ENT_XHTML.
    • ENT_HTML5
  • $encoding: Đây là một tham số không bắt buộc

Chạy đoạn mã sau:

<?php
$html="<html> <head><head>Một đoạn văn bản   </html>";
$string = htmlentities( $html, ENT_COMPAT, 'UTF-8');
$result = htmlentities( $string, ENT_COMPAT, 'UTF-8');
 
echo $string. "<br >";
echo $result . "<br >";
?>

Kết quả nhận được là:

<html> <head><head>Một đoạn văn bản   </html>
&lt;html&gt; &lt;head&gt;&lt;head&gt;Một đoạn văn bản   &lt;/html&gt;

Hàm html_entity_decode() trong PHP

Hàm html_entity_decode() sẽ làm việc ngược lại so với htmlentities(). Sẽ chuyển đổi ký tự thực thể sang ký tự HTML.

Cũng với ví dụ trên mình sẽ thêm một đoạn lệnh phía dưới:

$r = html_entity_decode($result);

echo $result . "<br >";
echo $r . "<br >";

Và kết quả khi echo $r ra sẽ là:

<html> <head><head>Một đoạn văn bản </html>

Với bài viết về hai hàm htmlentities(), html_entity_decode() trong PHP bạn đã hiểu được cách dùng như thế nào rồi đấy. Khi đọc bạn nên viết mã để thực hành kẻo quên mất nhé. Ngoài ra hãy thường xuyên ghé thăm blog để đọc thật nhiều bài viết về ngôn ngữ PHP.

Related Posts

Namespace trong PHP

Namespace cho phép các lớp / hàm / hằng cùng tên được sử dụng trong các ngữ cảnh khác nhau mà không có bất kỳ xung đột…

Hàm str_split() trong PHP

Bài viết này chúng ta sẽ đi tìm hiểu về hàm str_split(). Một trong những hàm thường được dùng trong PHP. Vậy cách sử dụng str_split() như…

Tạo chức năng sửa xoá thành viên bằng PHP & MySQL

Với một số trang web để quản lý thành viên (user) dễ dàng trong phần quản trị admin bạn phải khởi tạo chức năng sửa xoá thành…

Hàm str_replace trong PHP

Hàm str_replace trong PHP là gì? Hàm str_replace() trong PHP là một hàm được sử dụng để thay thế tất cả các xuất hiện của một chuỗi…

laravel8-vews-1

Views trong Laravel 8

Trong chuỗi series hướng dẫn học Laravel thì Views cũng quan trọng không kém gì so với Controller hay Model. Vậy chúng ta sẽ làm thế nào…

Validate Form trong PHP

Mặc dù trình duyệt hỗ trợ JavaScript để xác thực người dùng cho website. Tuy nhiên nếu JavaScript bị lỗi hoặc tắt đi thì công việc này…