2 回答

TA貢獻(xiàn)1798條經(jīng)驗(yàn) 獲得超3個(gè)贊
您可以遍歷所有節(jié)點(diǎn)并修剪節(jié)點(diǎn)值,為此您需要一個(gè)遞歸函數(shù)來(lái)遍歷所有節(jié)點(diǎn):
function trimNodes(DOMNode $node) {
foreach ($node->childNodes as $child){
if($child->hasChildNodes()) {
trimNodes($child);
} else{
$child->nodeValue = trim($child->nodeValue);
}
}
}
調(diào)用這個(gè)函數(shù)并將 $doc 發(fā)送給它,然后你將得到你想要的 XML。請(qǐng)注意您的 XML 需要有一個(gè)根節(jié)點(diǎn)。您當(dāng)前有兩個(gè)根節(jié)點(diǎn)(另一個(gè)標(biāo)簽,請(qǐng)注意),將它們包裝在一個(gè)根節(jié)點(diǎn)中。

TA貢獻(xiàn)2036條經(jīng)驗(yàn) 獲得超8個(gè)贊
如果$sampleXML只是一個(gè)字符串,那么我認(rèn)為正則表達(dá)式可以為您提供您正在尋找的內(nèi)容:
$pattern = '/(?<=\>)\s+(?=[a-zA-Z0-9,\.\_])|(?<=[a-zA-Z0-9,\.\_])\s+(?=\<)/';
$sampleXML = preg_replace($pattern, '', $sampleXML);
- 2 回答
- 0 關(guān)注
- 168 瀏覽
添加回答
舉報(bào)