Học PHP

Nếu bạn đang gặp khó khăn trong việc lấy dữ liệu từ file XML thì ví dụ mà mình chia sẻ sau đây sẽ giúp bạn dễ dàng quản lý và làm chủ được file XML, ví dụ rất đơn giản nhưng thật sự hữu ích cho những bạn mới lập trình, các bạn đừng nên bỏ qua.
Sau đây là ví dụ của mình :

<?php
$xml = '<Countries>
<Country>
<Page1_col1>Country1</Page1_col1>
<Page1_col2>89,921</Page1_col2>
<Page1_col2>61</Page1_col2>
<Country_sub_details>
<Page2_col1>A1</Page2_col1>
<Page2_col2>1,187</Page2_col2>
<Page2_col3>45</Page2_col3>
<Country_sub_sub_details>
<Page3_col1>AA1</Page3_col1>
<Page3_col2>375</Page3_col2>
<Page3_col3>45</Page3_col3>
</Country_sub_sub_details>
</Country_sub_details>
</Country>
</Countries>';
// load nội dung file XML và tạo một đối tượng (object ) cho XML
$xmlobj = simplexml_load_string($xml);
// lấy và xuất ra tên của phần tử đầu tiên (root)
echo 'root: '. $xmlobj->getName() . '<br />';
// vòng lặp cho lớp con đầu tiên
foreach($xmlobj->children() as $child) {
echo $child->getName(). ': '. '<br />'; // Xuất ra tên
// Nếu lớp con này có lớp con nó thì
if($child->count()>1) {
foreach($child as $child2) {
echo $child2->getName(). ': '. $child2. '<br />';
// if the child2 node has other children
if($child2->count()>1) {
// Nếu  child2 có lớp con nưa thì in tên và nội dung của  $child3
foreach($child2 as $child3) {
echo $child3->getName(). ': '. $child3. '<br />';
// Tương tự như ở trên
if($child3->count()>1) {
foreach($child3 as $child4) {
echo $child4->getName(). ': '. $child4. '<br />';
}
}
}
}
}
}
}
?>

Hy vọng với đoạn code nhỏ này có thể giúp các bạn hiểu và nắm rõ hơn về quản lý file XML, chúc các bạn thành công !

ĐỂ LẠI PHẢN HỒI CỦA BẠN TẠI ĐÂY

Phản hồi về bài viết này

NO COMMENTS

LEAVE A REPLY


*