簡體   English   中英

使用PHP DomDocument區分HTML和XML

[英]Differentiating HTML and XML with PHP DomDocument

有沒有辦法用PHP DomDocument區分XML和HTML?

我查看了文檔但沒有找到任何內容。

我正在尋找像check($string)這樣的函數,它為每個$string返回'is XML''is HTML'

這些類似 的問題 在這里的SO我沒有幫助。

沒有這樣的功能,但是你可以放心,當DOMDocument::loadXML()返回true時,某些$string是格式良好的XML(將recover設置為false)。 HTML文檔失敗了。

對於HTML,您可以使用DOMDocument::loadHTML()來檢查文檔是否可以作為HTML加載。 HTML不像XML那么嚴格。

使用preg_match擴展名。 例:

if( preg_match('/<html[^>]*>/', $string) ) {
{
  // ... actions for XML ...
} elseif( preg_match('/<\?xml[^?]*\?>/', $string) ) {
  // ... actions for HTML ...
} else {
  // ... actions for another ...
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM