Hướng dẫn simplexml_load_string in php

Xin chào các bạn! Hôm nay edu.com.vn sẽ hướng dẫn các bạn sử dụng SimpleXML để đọc file XML trong PHP.

SimpleXML giúp việc đọc XML như là 1 đối tượng trong PHP và ngược lại. SimpleXML đọc cấu trúc XML và tìm ra các thành phần. Phần mở rộng SimpleXML yêu cầu PHP5 hoặc cao hơn và được bật mặc định.

Đọc file XML

Đầu tiên chúng ta tạo file XML với cấu trúc như sau với mục đích lưu trữ thông tin về 1 lớp học lập trình PHP nâng cao:


	PHP Advanced
	
	PHP-01

Chúng ta tạo file PHP để đọc và hiển thị đối tượng với SimpleXML:

Kết quả khi thực thi đoạn mã PHP trên:

SimpleXMLElement Object ( [title] => PHP Advanced [time] => 2.5 months [class] => PHP-01 )

Hiển thị nội dung cho từng thành phần trong file XML với đoạn code sau:

title . '
'; echo 'Time: ' . $xml->time . '
'; echo 'Class: ' . $xml->class . '
'; ?>

Kết quả khi thực thi đoạn mã trên:

Subject: PHP Advanced
Time: 2.5 months
Class: PHP-01

 Tạo file XML với SimpleXML

Chúng ta sử dụng đoạn mã sau đây để tạo file XML với nội dung được lưu trữ trong mảng nhiều chiều:

 'PHP Basic',
        'time' => '2 months',
        'class' => 'PHP-01'),
    array(
        'title' => 'PHP Advanced',
        'time' => '2.5 months',
        'class' => 'PHP-02'));

$xml = new SimpleXMLElement('');

foreach($subjects_arr as $item){
    $subject = $xml->addChild('subject');
    foreach($item as $key => $value){
        $tmp = $subject->addChild($key);
        $tmp->{0} = $value;
    }
}

$xml->asXML('its.xml');

?>

Khi thực thi đoạn chương trình trên, chúng ta sẽ tạo ra file ‘its.xml’ như sau:


	
		PHP Basic
		
		PHP-01
	
	
		PHP Advanced
		
		PHP-02
	

Trên đây là các ví dụ về cách sử dụng phần mở rộng SimpleXML trong PHP. Chúc các bạn thành công.

Xin chào các bạn! Hôm nay edu.com.vn sẽ hướng dẫn các bạn sử dụng SimpleXML để đọc file XML trong PHP.

SimpleXML giúp việc đọc XML như là 1 đối tượng trong PHP và ngược lại. SimpleXML đọc cấu trúc XML và tìm ra các thành phần. Phần mở rộng SimpleXML yêu cầu PHP5 hoặc cao hơn và được bật mặc định.

Đọc file XML

Đầu tiên chúng ta tạo file XML với cấu trúc như sau với mục đích lưu trữ thông tin về 1 lớp học lập trình PHP nâng cao:


	PHP Advanced
	
	PHP-01

Chúng ta tạo file PHP để đọc và hiển thị đối tượng với SimpleXML:

Kết quả khi thực thi đoạn mã PHP trên:

SimpleXMLElement Object ( [title] => PHP Advanced [time] => 2.5 months [class] => PHP-01 )

Hiển thị nội dung cho từng thành phần trong file XML với đoạn code sau:

title . '
'; echo 'Time: ' . $xml->time . '
'; echo 'Class: ' . $xml->class . '
'; ?>

Kết quả khi thực thi đoạn mã trên:

Subject: PHP Advanced
Time: 2.5 months
Class: PHP-01

 Tạo file XML với SimpleXML

Chúng ta sử dụng đoạn mã sau đây để tạo file XML với nội dung được lưu trữ trong mảng nhiều chiều:

 'PHP Basic',
        'time' => '2 months',
        'class' => 'PHP-01'),
    array(
        'title' => 'PHP Advanced',
        'time' => '2.5 months',
        'class' => 'PHP-02'));

$xml = new SimpleXMLElement('');

foreach($subjects_arr as $item){
    $subject = $xml->addChild('subject');
    foreach($item as $key => $value){
        $tmp = $subject->addChild($key);
        $tmp->{0} = $value;
    }
}

$xml->asXML('its.xml');

?>

Khi thực thi đoạn chương trình trên, chúng ta sẽ tạo ra file ‘its.xml’ như sau:


	
		PHP Basic
		
		PHP-01
	
	
		PHP Advanced
		
		PHP-02
	

Trên đây là các ví dụ về cách sử dụng phần mở rộng SimpleXML trong PHP. Chúc các bạn thành công.

Danh sách tất cả các hàm SimpleXML trong PHP

- SimpleXML là một phần mở rộng cho phép chúng ta đơn giản hóa việc thao tác & lấy dữ liệu XML.

- SimpleXML cung cấp một cách thức đơn giản để lấy tên, thuộc tính, nội dung văn bản của phần tử nếu chúng ta biết cấu trúc hoặc bố cục của tài liệu XML.

- SimpleXML biến một tài liệu XML thành một cấu trúc dữ liệu mà bạn có thể lặp lại giống như một tập hợp các mảng & đối tượng.

__construct() - Tạo một đối tượng SimpleXMLElement.
__toString() - Trả về nội dung chuỗi của một phần tử.
addAttribute() - Thêm thuộc tính vào phần tử SimpleXML.
addChild() - Thêm một phần tử con vào phần tử SimpleXML.
asXML() - Trả về một chuỗi XML được định dạng tốt từ một đối tượng SimpleXML.
saveXML()
attributes() - Trả về các thuộc tính & giá trị của một phần tử XML.
children() - Trả về con của một node chỉ định.
count() - Đếm số con của một node chỉ định.
getDocNamespaces() - Trả về không gian tên được khai báo trong tài liệu XML.
getName() - Trả về tên của một phần tử XML.
getNamespaces() - Trả về không gian tên được sử dụng trong tài liệu XML.
registerXPathNamespace() - Tạo bối cảnh không gian tên cho truy vấn XPath tiếp theo.
simplexml_import_dom() - Trả về một đối tượng SimpleXMLElement từ một node DOM.
simplexml_load_file() - Chuyển đổi tài liệu XML thành một đối tượng.
simplexml_load_string() - Chuyển đổi một chuỗi XML thành một đối tượng.
xpath() - Chạy truy vấn XPath trên tài liệu XML.

Các hàm lặp SimpleXML

current() - Trả về phần tử hiện tại.
getChildren() - Trả về các phần tử con của phần tử hiện tại.
hasChildren() - Kiểm tra xem phần tử hiện tại có phần tử con hay không.
key() - Trả về tên thẻ XML của phần tử hiện tại.
next() - Chuyển đến phần tử tiếp theo.
rewind() - Tua lại phần tử đầu tiên.
valid() - Kiểm tra xem phần tử hiện tại có hợp lệ hay không sau khi gọi rewind() hoặc next().