<?php function xml2array($contents, $get_attributes = 1, $priority = 'tag') { if (!$contents) return array(); if (!function_exists('xml_parser_create')) { // print "'xml_parser_create()' function not found!"; return array(); } // Get the XML parser of PHP - PHP must have this module for the parser to work $parser = xml_parser_create(''); xml_parser_set_option($parser, XML_OPTION_TARGET_ENCODING, "UTF-8"); // http://minutillo.com/steve/weblog/2004/6/17/php-xml-and-character-encodings-a-tale-of-sadness-rage-and-data-loss xml_parser_set_option($parser, XML_OPTION_CASE_FOLDING, 0); xml_parser_set_option($parser, XML_OPTION_SKIP_WHITE, 1); xml_parse_into_struct($parser, trim($contents), $xml_values); xml_parser_free($parser); if (!$xml_values) return; //Hmm... // Initializations $xml_array = array(); $parents = array(); $opened_tags = array(); $arr = array(); $current = &$xml_array; //Refference // Go through the tags. $repeated_tag_index = array(); //Multiple tags with same name will be turned into an array foreach($xml_values as $data) { unset($attributes, $value); //Remove existing values, or there will be trouble // This command will extract these variables into the foreach scope // tag(string), type(string), level(int), attributes(array). extract($data); //We could use the array by itself, but this cooler. $result = array(); $attributes_data = array(); if (isset($value)) { if ($priority == 'tag') $result = $value; else $result['value'] = $value; //Put the value in a assoc array if we are in the 'Attribute' mode }
Ini ialah perpustakaan kelas yang boleh menukar antara format XML dan data Rakan yang memerlukannya boleh memuat turun dan menggunakannya.
Semua sumber di laman web ini disumbangkan oleh netizen atau dicetak semula oleh tapak muat turun utama. Sila semak integriti perisian itu sendiri! Semua sumber di laman web ini adalah untuk rujukan pembelajaran sahaja. Tolong jangan gunakannya untuk tujuan komersial. Jika tidak, anda akan bertanggungjawab untuk semua akibat! Jika terdapat sebarang pelanggaran, sila hubungi kami untuk memadamkannya. Maklumat hubungan: admin@php.cn
Artikel Berkaitan

02 Apr 2025
Bagaimana cara menukar PDF ke XML? Gunakan penukar dalam talian, perisian desktop atau perpustakaan pengaturcaraan untuk memilih format fail yang sesuai (XHTML, PDF/UA, XML) untuk mengoptimumkan PDF (OCR, memadam unsur -unsur yang tidak perlu, menyesuaikan halaman) untuk menyempurnakan tetapan penukaran (TAG, metadata, pengekstrakan imej)

10 Mar 2025
Artikel ini meneroka menukarkan data XML ke format JSON atau CSV. Ia membincangkan pelbagai kaedah: Bahasa & Perpustakaan Pengaturcaraan (Python, Java, JavaScript), alat baris arahan, dan penukar dalam talian. Cabaran termasuk struktur kompleks, nama

02 May 2025
Perbezaan utama antara JSON, XML dan RSS adalah struktur dan kegunaan: 1. JSON sesuai untuk pertukaran data mudah, dengan struktur ringkas dan mudah dihuraikan; 2. XML sesuai untuk struktur data yang kompleks, dengan struktur yang ketat tetapi parsing kompleks; 3. RSS didasarkan pada XML dan digunakan untuk pelepasan kandungan, penggunaan standard tetapi terhad.

17 Dec 2024
Mencipta Perpustakaan Statik yang Berpaut ke Perpustakaan Statik Lain Apabila membina perpustakaan statik yang bergantung pada kebergantungan daripada berbilang yang lain...

14 Mar 2025
Navicat memudahkan import/eksport data dalam format seperti CSV, Excel, XML, JSON menggunakan penyihir import/eksport, membantu pengurusan data dan analisis yang cekap.

01 Nov 2024
Pengepala yang manakah dalam Perpustakaan Standard C Termasuk Lain-lain? Secara umumnya, pengaturcara tidak seharusnya menganggap bahawa satu pengepala perpustakaan standard C akan...


Alat panas

Pustaka PHP untuk bekas suntikan kebergantungan
Pustaka PHP untuk bekas suntikan kebergantungan

Koleksi 50 algoritma PHP klasik yang sangat baik
Algoritma PHP klasik, pelajari idea yang sangat baik dan kembangkan pemikiran anda

Pustaka PHP kecil untuk mengoptimumkan imej
Pustaka PHP kecil untuk mengoptimumkan imej
