Rumah Perpustakaan PHP Perpustakaan lain Format data PHP dan kelas penukaran XML
Format data PHP dan kelas penukaran XML
<?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.

Penafian

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

PDF ke XML: Amalan Terbaik untuk Memelihara Format dan Data PDF ke XML: Amalan Terbaik untuk Memelihara Format dan Data

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)

Bagaimanakah saya boleh menukar data XML ke format lain (JSON, CSV, dan lain -lain)? Bagaimanakah saya boleh menukar data XML ke format lain (JSON, CSV, dan lain -lain)?

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

JSON, XML, dan Format Data: Membandingkan RSS JSON, XML, dan Format Data: Membandingkan RSS

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.

Bagaimana untuk Mencipta Perpustakaan Statik daripada Berbilang Perpustakaan Statik Lain? Bagaimana untuk Mencipta Perpustakaan Statik daripada Berbilang Perpustakaan Statik Lain?

17 Dec 2024

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

Bagaimanakah saya mengimport dan mengeksport data dalam pelbagai format (CSV, Excel, XML, JSON) menggunakan Navicat? Bagaimanakah saya mengimport dan mengeksport data dalam pelbagai format (CSV, Excel, XML, JSON) menggunakan Navicat?

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.

Pengepala Perpustakaan Standard C Manakah yang Termasuk Secara Eksplisit Lain? Pengepala Perpustakaan Standard C Manakah yang Termasuk Secara Eksplisit Lain?

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...

See all articles