XPath သည် XML စာရွက်စာတမ်းများတွင် node များကိုရှာဖွေရန်အသုံးပြုသောဘာသာစကားဖြစ်သည်။ Simplexml သည် XPath () နည်းလမ်းဖြင့် XPAPH အသုံးအနှုန်းများကို သုံး. node များရှာဖွေမေးမြန်းရန် XPath အသုံးအနှုန်းများနှင့်ပါ 0 င်သည်။
ကျွန်ုပ်တို့သည်အောက်ပါ XML မှ စာအုပ် node များအားလုံးကိုရယူရန်လိုသည်ဆိုပါစို့။ စာရေးသူသည် Li Si ၏ခေါင်းစဉ်စာအုပ်ဖြစ်သည်ဆိုပါစို့။
<span><span><span class="hljs-variable">$xmlString</span></span><span> = <span class="hljs-string"><<<XML
<books>
<book id="1">
<title>PHPစတင်အသုံးပြုခြင်း</title>
<author>Zhang San</author>
</book>
<book id="2">
<title>XML</span>အမှန်တကယ်တိုက်ခိုက်ရေးခွဲခြမ်းစိတ်ဖြာ</title>
<author>li si</author>
</book>
<book id=</span><span><span class="hljs-string">"3"</span></span><span>>
<title>နက်ရှိုင်းသောနားလည်မှုPHP</title>
<author>li si</author>
</book>
</books>
XML;
</span><span><span class="hljs-variable">$xml</span></span><span> = </span><span><span class="hljs-title function_ invoke__">simplexml_load_string</span></span><span>(</span><span><span class="hljs-variable">$xmlString</span></span><span>);
</span><span><span class="hljs-comment">// XPathမေးမြန်းauthor为li si的booknode</span></span><span>
</span><span><span class="hljs-variable">$result</span></span><span> = </span><span><span class="hljs-variable">$xml</span></span><span>-></span><span><span class="hljs-title function_ invoke__">xpath</span></span><span>(</span><span><span class="hljs-string">"//book[author='li si']"</span></span><span>);
</span><span><span class="hljs-keyword">foreach</span></span><span> (</span><span><span class="hljs-variable">$result</span></span><span> </span><span><span class="hljs-keyword">as</span></span><span> </span><span><span class="hljs-variable">$book</span></span><span>) {
</span><span><span class="hljs-keyword">echo</span></span><span> </span><span><span class="hljs-string">"စာအုပ်ခေါင်းစဉ်:"</span></span><span> . </span><span><span class="hljs-variable">$book</span></span><span>->title . </span><span><span class="hljs-string">"\n"</span></span><span>;
}
</span></span>
ရလဒ်များအစက်အပြောက်:
<span><span>စာအုပ်ခေါင်းစဉ်:</span><span><span class="hljs-type">XML</span></span><span>အမှန်တကယ်တိုက်ခိုက်ရေးခွဲခြမ်းစိတ်ဖြာ
စာအုပ်ခေါင်းစဉ်:နက်ရှိုင်းသောနားလည်မှုPHP
</span></span>
// စာအုပ် - စာအုပ် node များအားလုံးကိုရွေးချယ်ပါ
[စာရေးသူ = 'li si'] : စစ်ထုတ်ခြင်းအခြေအနေကိုစာရေးခြင်း Node ကိုရွေးချယ်ခြင်း "Li Si" ပါသောစာအုပ်ကိုရွေးချယ်ပါ။
စာအုပ် အားလုံး၏ ID attribute များကိုရယူပါ။
<span><span><span class="hljs-keyword">foreach</span></span><span> (</span><span><span class="hljs-variable">$xml</span></span><span>-></span><span><span class="hljs-title function_ invoke__">xpath</span></span><span>(</span><span><span class="hljs-string">"//book"</span></span><span>) </span><span><span class="hljs-keyword">as</span></span><span> </span><span><span class="hljs-variable">$book</span></span><span>) {
</span><span><span class="hljs-keyword">echo</span></span><span> </span><span><span class="hljs-string">"စာအုပ်ID:"</span></span><span> . </span><span><span class="hljs-variable">$book</span></span><span>[</span><span><span class="hljs-string">'id'</span></span><span>] . </span><span><span class="hljs-string">"\n"</span></span><span>;
}
</span></span>
စာအုပ်များကို ID ကို 1 ထက်ကြီးသောစာအုပ်များရယူပါ။
<span><span><span class="hljs-variable">$result</span></span><span> = </span><span><span class="hljs-variable">$xml</span></span><span>-></span><span><span class="hljs-title function_ invoke__">xpath</span></span><span>(</span><span><span class="hljs-string">"//book[@id > 1]"</span></span><span>);
</span><span><span class="hljs-keyword">foreach</span></span><span> (</span><span><span class="hljs-variable">$result</span></span><span> </span><span><span class="hljs-keyword">as</span></span><span> </span><span><span class="hljs-variable">$book</span></span><span>) {
</span><span><span class="hljs-keyword">echo</span></span><span> </span><span><span class="hljs-variable">$book</span></span><span>->title . </span><span><span class="hljs-string">"\n"</span></span><span>;
}
</span></span>
Simplexml_load_string () သို့မဟုတ် simplexml_load_file ကို အသုံးပြု. XML ကိုတင်ပါ။
XPath () နည်းလမ်းကို XPath အသုံးအနှုန်းများဖြင့်နေရာချထားရန်ပြောင်းလွယ်ပြင်လွယ်စေရန်နည်းလမ်းကိုသုံးပါ။
node ကိုဂုဏ်သတ္တိများ attribute arrays မှတဆင့်ဝင်ရောက်နိုင်ပါတယ်။
XPath အသုံးအနှုန်းများသည်အစွမ်းထက်ပြီးစီခြင်းမျိုးစုံကို filtering နှင့် patericing provideing ကိုထောက်ပံ့နိုင်သည်။
Simplexml နှင့် XPath ပေါင်းစပ်မှုကိုကျွမ်းကျင်သူများသည် PHP developer များအား XML data များကို effecter data များအားလုံးကိုပိုမိုထိရောက်စွာလုပ်ဆောင်နိုင်ပြီးအစီအစဉ်ပြောင်းလွယ်ပြင်လွယ်မှုနှင့်ထိန်းသိမ်းမှုကိုတိုးတက်စေသည်။