လက်ရှိတည်နေရာ: ပင်မစာမျက်နှာ> နောက်ဆုံးရဆောင်းပါးများစာရင်း> XML_Parse နှင့် PDO ကိုဒေတာဘေ့စ်တွင်ပါ 0 င်ရန် XML ဒေတာများကိုအသုံးပြုမည်

XML_Parse နှင့် PDO ကိုဒေတာဘေ့စ်တွင်ပါ 0 င်ရန် XML ဒေတာများကိုအသုံးပြုမည်

M66 2025-04-26

မျက်မှောက်ခေတ်ဝက်ဘ်ဆိုက်များအဆိုပြုချက်များတွင်ဒေတာပုံစံများမတူကွဲပြားမှုများသည် developer များကို developer များကိုမကြာခဏ XML ဒေတာများကိုမကြာခဏလုပ်ဆောင်ရန်လိုအပ်သည်။ အကယ်. XML ဒေတာများကိုဒေတာဘေ့စ်တွင်သိမ်းထားပါက PHP ၏ XML_Parse function and function နှင့် PDO ၏ဒေတာဘေ့စ်လုပ်ငန်းများကိုအလိုအလျောက်ခွဲခြမ်းစိတ်ဖြာခြင်းနှင့်အပြောင်းအလဲများကိုရရှိရန်အတွက်အသုံးပြုနိုင်သည်။ ဤဆောင်းပါးသည်ဤလုပ်ငန်းစဉ်ကိုအသေးစိတ်မိတ်ဆက်ပေးပြီး Runnable ကုဒ်များဥပမာများပါဝင်သည်။

အဆင့် 1 - XML ​​အချက်အလက်များကိုဒေတာဘေ့စ်တွင်ပြင်ဆင်ပါ

XML_DATA အမည်ရှိစားပွဲတစ်ခုပါသည့် MYSQL ဒေတာဘေ့စ်ရှိသည်ဆိုပါစို့။

 CREATE TABLE xml_data (
    id INT AUTO_INCREMENT PRIMARY KEY,
    xml_content TEXT NOT NULL
);

XML အချက်အလက်များကိုဥပမာတစ်ခုအဖြစ်ထည့်သွင်းကြည့်ရအောင်။

 INSERT INTO xml_data (xml_content) VALUES 
('<book><title>PHP Programming အလေ့အကျင့်</title><author>Zhang San</author><url>https://m66.net/books/php</url></book>');

အဆင့် 2 - ဒေတာဘေ့စ်မှ XML ဒေတာများကိုဖတ်ရန် PDO ကိုသုံးပါ

 <?php
$dsn = 'mysql:host=localhost;dbname=test_db;charset=utf8mb4';
$username = 'db_user';
$password = 'db_pass';

try {
    $pdo = new PDO($dsn, $username, $password);
    
    $stmt = $pdo->query("SELECT xml_content FROM xml_data");
    while ($row = $stmt->fetch(PDO::FETCH_ASSOC)) {
        $xml = $row['xml_content'];
        parseXmlWithHandler($xml);
    }

} catch (PDOException $e) {
    echo "ဒေတာဘေ့စဆက်သွယ်မှုမအောင်မြင်ပါ: " . $e->getMessage();
}
?>

အဆင့် 3: XML_Parse ကို XML ဒေတာကိုခွဲခြမ်းစိတ်ဖြာပါ

PHP ရဲ့ XML_Parse ဟာအဖြစ်အပျက် -docriven parser ဖြစ်ပါတယ်။ အသုံးမပြုမီသင် parsing function နှင့် processor ကိုသတ်မှတ်ရန်လိုအပ်သည်။

 function parseXmlWithHandler($xmlString) {
    $parser = xml_parser_create();

    xml_set_element_handler($parser, "startElement", "endElement");
    xml_set_character_data_handler($parser, "characterData");

    if (!xml_parse($parser, $xmlString, true)) {
        echo "XML အမှားခွဲခြမ်းစိတ်ဖြာခြင်း: " . xml_error_string(xml_get_error_code($parser));
        return;
    }

    xml_parser_free($parser);
}

function startElement($parser, $name, $attrs) {
    echo "<b>tag ကိုစတင်ပါ:</b> $name<br>";
}

function endElement($parser, $name) {
    echo "<b>tag tag:</b> $name<br>";
}

function characterData($parser, $data) {
    $trimmed = trim($data);
    if ($trimmed !== '') {
        echo "<b>ကေြနပ်သော:</b> $trimmed<br>";
    }
}

အဆင့် 4: output နမူနာရလဒ်များ

အထက်ပါ script ကိုဖွင့်ပြီးနောက်တွင် output သည်အလွန်ဆင်တူလိမ့်မည်။

 tag ကိုစတင်ပါ:BOOK
tag ကိုစတင်ပါ:TITLE
ကေြနပ်သော:PHP Programming အလေ့အကျင့်
tag tag:TITLE
tag ကိုစတင်ပါ:AUTHOR
ကေြနပ်သော:Zhang San
tag tag:AUTHOR
tag ကိုစတင်ပါ:URL
ကေြနပ်သော:https://m66.net/books/php
tag tag:URL
tag tag:BOOK