php - PHP> 如何檢查XML是否為空

75 2

我從特定ID后的請求中獲取簡單的xml內容。 但是有時候,ID不再可用並且XML是空的。

如果xml為空,如何使用PHP進行檢查?

如果某人有一個想法,我會感激他能幫助我。

先謝謝了。

时间:

100 4

如果你可以使用SimpleXML擴展:


$xmlObject = new SimpleXMLElement($xmlText);


if ($xmlObject->count() == 0) {


//it's empty


}


else {


//XML object has children


}



另外,SimpleXML是非常方便的xml閱讀器/編輯器。

詳細信息:http://ua2.php.net/manual/en/book.simplexml.php

原作者:
88 5

我想這取決於你的意思是空,如果整個文檔是空的,你可以檢查文檔的字元串版本是否為空:


if (empty($xmlString)) 


{


//is empty 


}



但是,如果你期望一個根節點,你可能需要檢查是否有任何子節點:


$xml = simplexml_load_file("test.xml");



if (empty($xml->getName()) && count($xml->children()) == 0) { 


//is empty


}



希望有幫助

原作者:
87 0

只要在你的id前使用( 字元串) 就可以了。 example:-的代碼類似於 $id = $xml-> mail-> id ;

然後使它類似於這個 $id = (string)$xml-> mail-> id ;

它會工作

原作者:
65 5

只是將我的兩分錢添加到一個舊問題,但最受好評的答案似乎建議使用 simplexml_load_file("test.xml"); 然後測試您期望的節點是否為空。 因為如果文件為空,這會拋出警告級別錯誤,我不同意這麼做,而是用文件大小的測試包裝調用。


$xmlInfo = new SplFileInfo('test.xml');


if((int) $xmlInfo->getSize()> 0)


{


 $xml = simplexml_load_file($xmlInfo->getPath()); 


}



How can I check with PHP if a xml is empty

...