HTML Table To XML Converter cho phép bạn chuyển đổi Bảng HTML sang XML trực tuyến. Chọn một tệp HTML hoặc Tải HTML từ một url hoặc Nhập dữ liệu Bảng HTML và chuyển đổi nó thành XML. Làm đẹp HTML, XML và tải dữ liệu XML đã chuyển đổi xuống thiết bị của bạn
Nhiều khi chúng ta cần lưu trữ dữ liệu dưới dạng XML vào cơ sở dữ liệu hoặc vào tệp để sử dụng sau này. Để đáp ứng nhu cầu này, chúng tôi sẽ cần chuyển đổi dữ liệu sang XML và lưu tệp XML. Trong hướng dẫn này, chúng ta sẽ thảo luận về cách tạo XML từ mảng trong PHP. Chúng tôi đã tạo một tập lệnh đơn giản để chuyển đổi mảng PHP thành XML. Bạn có thể dễ dàng tạo tệp XML từ mảng PHP và lưu tệp XML. Bạn có thể chuyển đổi tất cả các loại mảng như mảng liên kết hoặc mảng nhiều chiều
Mảng PHP
Lúc đầu, chúng tôi sẽ lưu trữ dữ liệu người dùng vào một biến [$users_array
]
$users_array = array[
"total_users" => 3,
"users" => array[
array[
"id" => 1,
"name" => "Smith",
"address" => array[
"country" => "United Kingdom",
"city" => "London",
"zip" => 56789,
]
],
array[
"id" => 2,
"name" => "John",
"address" => array[
"country" => "USA",
"city" => "Newyork",
"zip" => "NY1234",
]
],
array[
"id" => 3,
"name" => "Viktor",
"address" => array[
"country" => "Australia",
"city" => "Sydney",
"zip" => 123456,
]
],
]
];
Mảng sang XML
Bây giờ chúng ta sẽ chuyển đổi mảng người dùng sang XML bằng cách sử dụng PHP SimpleXML
. Vui lòng theo dõi các thẻ nhận xét để hiểu rõ hơn
//function defination to convert array to xml
function array_to_xml[$array, &$xml_user_info] {
foreach[$array as $key => $value] {
if[is_array[$value]] {
if[!is_numeric[$key]]{
$subnode = $xml_user_info->addChild["$key"];
array_to_xml[$value, $subnode];
}else{
$subnode = $xml_user_info->addChild["item$key"];
array_to_xml[$value, $subnode];
}
}else {
$xml_user_info->addChild["$key",htmlspecialchars["$value"]];
}
}
}//creating object of SimpleXMLElement
$xml_user_info = new SimpleXMLElement[""];//function call to convert array to xml
array_to_xml[$users_array,$xml_user_info];//saving generated xml file
$xml_file = $xml_user_info->asXML['users.xml'];
//success and error message based on xml creation
if[$xml_file]{
echo 'XML file have been generated successfully.';
}else{
echo 'XML file generation error.';
}
Tệp XML
Tệp users.xml
chứa xml sau
3 1 Smith United Kingdom London 56789 2 John USA Newyork NY1234 3 Viktor Australia Sydney 123456
Chèn XML vào cơ sở dữ liệu
Nếu bạn muốn lưu XML vào cơ sở dữ liệu thì thay dòng biến $xml_file
bằng dòng code sau. Bây giờ bạn có thể chèn biến $xml_file
vào cơ sở dữ liệu
$xml_file = $xml_user_info->asXML[];
Bạn có muốn nhận trợ giúp triển khai hay sửa đổi hoặc nâng cao chức năng của tập lệnh này không?
Khi cần tuần tự hóa một mảng PHP, nó có thể được chuyển đổi thành XML, lưu trữ và cũng có thể được truyền đi. Trong quá trình đó, các cặp khóa/phần tử được chuyển đổi thành các nút cấu trúc
Các nút XML được tạo theo tên của các khóa và phần tử mảng được thêm làm nút con cho các nút khóa này
Tôi có một mảng đầu vào hai chiều chứa mảng các cặp khóa/phần tử. Các phần tử mảng bên trong chứa tiêu đề, liên kết và mô tả của bài báo
Trong khi chuyển đổi mảng này thành một tài liệu XML, tôi đã tạo một nút gốc có tên là các mục. Sau đó, tôi lặp lại mảng đầu vào và tạo mục con với các nút tiêu đề, liên kết và mô tả trên mỗi lần lặp
Mã PHP để chuyển đổi mảng thành XML
Mã này có cấu trúc mảng đầu vào được cung cấp cho vòng lặp foreach PHP để lặp lại các phần tử mảng bên trong. Trước khi lặp lại mảng đầu vào, tôi đã tạo một đối tượng cho lớp DOMDocument[] . Đối tượng này được sử dụng để tạo tài liệu XML
Tôi đã tạo phần tử và nối nó vào tài liệu XML với tham chiếu của đối tượng DOMDocument. Sau đó, mảng đầu vào được lặp lại để lấy tiêu đề, liên kết và dữ liệu mô tả cho mỗi lần lặp