getElementById và getElementsByTagName là các phương thức của lớp DOMDocument trong PHP. Các phương thức này có thể được sử dụng trong PHP để lấy các phần tử từ tài liệu HTML.
- Trước khi sử dụng các phương thức của lớp PHP DOMDocument, bạn phải tải tài liệu HTML vào một đối tượng DOMDocument, như trong mã này.
// create the DOMDocument object $dochtml = new DOMDocument[]; // load content from a HTML page [or file] $dochtml->loadHTMLFile['filename.html']; // OR, load the HTML items from a string containing the HTML document $strhtml = 'Tags and content.- $dochtml chứa một đối tượng có cấu trúc cây gồm tất cả các thành phần trong tài liệu HTML. Sau khi đối tượng này được tạo, bạn có thể sử dụng các phương thức DOMDocument để truy cập các mục HTML [như bạn có thể thấy trong các ví dụ bên dưới].
'; $dochtml->loadHTML[$strhtml];
- Nó được chỉ định là có định dạng HTML tốt, mặt khác có thể tạo ra lỗi E_WARNING khi nó gặp lỗi đánh dấu
Để duyệt qua các phần tử của một đối tượng PHP, hãy sử dụng lệnh vòng lặp foreach[]
Hàm getElementById['ID'] trả về một đối tượng chứa phần tử có ID đã cho hoặc trả về NULL nếu không tìm thấy phần tử.Hàm này rất hữu ích khi bạn muốn đọc nội dung hoặc giá trị thuộc tính của một phần tử HTML có ID được chỉ định.
- Sử dụng thuộc tính nodeValue để lấy nội dung của phần tử được trả về bởi getElementById[].
- Sử dụng thuộc tính tagName [hoặc nodeName] để lấy tên của thẻ.
Ví dụ, lấy tên thẻ và nội dung của phần tử có ID được chỉ định
PHP getElementById, getElementsByTagName//coursesweb.net
'; // create the DOMDocument object, and load HTML from a string $dochtml = new DOMDocument[]; $dochtml->loadHTML[$strhtml]; // get the element with id="dv1" $elm = $dochtml->getElementById['dv1']; // get the tag name, and content $tag = $elm->tagName; $cnt = $elm->nodeValue; echo $tag. ' - '. $cnt; // div - //coursesweb.net ?>
Hàm getElementsByTagName['tag'] trả về một đối tượng chứa tất cả các phần tử có tên thẻ cục bộ đã cho. Đối số đặc biệt '*' phù hợp với tất cả các thẻ.
Chức năng này rất hữu ích khi bạn muốn đọc nội dung, hoặc thuộc tính của nhiều thành phần HTML giống nhau.
- Sử dụng getAttribute['attribute'] để lấy giá trị của một thuộc tính được chỉ định.
Ví dụ, nhận và xuất ID và nội dung của từng DIV
PHP getElementById, getElementsByTagName//coursesweb.net
Free PHP Course
marplo.net
'; // create the DOMDocument object, and load HTML from a string $dochtml = new DOMDocument[]; $dochtml->loadHTML[$strhtml]; // gets all DIVs $divs = $dochtml->getElementsByTagName['div']; // traverse the object with all DIVs foreach[$divs as $div] { // gets, and outputs the ID and content of each DIV $id = $div->getAttribute['id']; $cnt = $div->nodeValue; echo $id. ' - '. $cnt. '
'; } ?>
- Bạn cũng có thể sử dụng /chỉ tải một phần của tài liệu HTML.
Ví dụ 2. Tải một chuỗi chỉ chứa phần CƠ THỂ, lưu vào Mảng nội dung của từng đoạn với class="cls".
Free PHP Course
URL: //coursesweb.net
Paragraph without class.
marplo.net
PHP getElementById and getElementsByTagName
'; // create the DOMDocument object, and load HTML from a string $dochtml = new DOMDocument[]; $dochtml->loadHTML[$strhtml]; // gets alltags $prgs = $dochtml->getElementsByTagName['p']; $pcls = array[]; // traverse the object with all paragraphs foreach[$prgs as $prg] { // if the current paragraph has class="cls", adds it in the $pcls array if[$prg->getAttribute['class'] == 'cls'] { $pcls[] = $prg->nodeValue; } } // outputs the $pcls array print_r[$pcls]; // Array [[0] => Free PHP Course [1] => URL: //coursesweb.net [2] => PHP getElementById and getElementsByTagName ] ?>
Thuộc tính id
chỉ định một id duy nhất cho phần tử HTML. Giá trị của thuộc tính id
phải là duy nhất trong tài liệu HTML
Thuộc tính id
được sử dụng để trỏ đến một khai báo kiểu cụ thể trong biểu định kiểu. Nó cũng được JavaScript sử dụng để truy cập và thao tác với phần tử có id cụ thể
Cú pháp cho id là. viết một ký tự băm [#], theo sau là tên id. Sau đó, xác định các thuộc tính CSS trong dấu ngoặc nhọn {}
Trong ví dụ sau đây, chúng ta có một
phần tử trỏ đến tên id "myHeader". Phần tử này sẽ được tạo kiểu theo định nghĩa kiểu#myHeader
trong phần đầuVí dụ
tiêu đề của tôi
Ghi chú. Tên id có phân biệt chữ hoa chữ thường
Ghi chú. Tên id phải chứa ít nhất một ký tự, không được bắt đầu bằng số và không được chứa khoảng trắng [dấu cách, tab, v.v. ]
Sự khác biệt giữa Lớp và ID
Tên lớp có thể được sử dụng bởi nhiều phần tử HTML, trong khi tên id chỉ được sử dụng bởi một phần tử HTML trong trang
Ví dụ
London
London là thủ đô của nước Anh
Paris
Pari là thủ đô của nước Pháp
Tokyo
Tokyo là thủ đô của Nhật Bản
Dấu trang HTML có ID và Liên kết
Dấu trang HTML được sử dụng để cho phép người đọc chuyển đến các phần cụ thể của trang web
Dấu trang có thể hữu ích nếu trang của bạn rất dài
Để sử dụng dấu trang, trước tiên bạn phải tạo dấu trang, sau đó thêm liên kết vào dấu trang đó
Sau đó, khi nhấp vào liên kết, trang sẽ cuộn đến vị trí có dấu trang
Ví dụ
Đầu tiên, tạo một dấu trang với thuộc tính id
Chương 4
Sau đó, thêm một liên kết đến dấu trang ["Chuyển đến Chương 4"], từ trong cùng một trang
Hoặc, thêm một liên kết vào dấu trang ["Chuyển đến Chương 4"], từ một trang khác
Chuyển đến Chương 4
Sử dụng thuộc tính id trong JavaScript
Thuộc tính id
cũng có thể được JavaScript sử dụng để thực hiện một số tác vụ cho phần tử cụ thể đó