DOMDocument クラスを使用して、doc 型宣言、head、および body タグを追加できないようにすることは可能ですか? サーバー側のインクルード用に現在のコードを書いていますが、それはすでに適切に形成されたページにレンダリングされています。追加のタグは必要ありません。
user1193509
質問する
3749 次
2 に答える
5
@Wrikken が言ったこと、または PHP < 5.3.6 の場合は、正規表現を使用します。
$html = preg_replace('~<(?:!DOCTYPE|/?(?:html|body))[^>]*>\s*~i', '', $dom->saveHTML());
于 2012-06-26T22:29:56.070 に答える
2
PHP 5.3.6 以降では、 でノードを使用できます。それ以前は、マイナーな修正でecho $DOMDocument->saveHTML($the_node_you_want_to_show)
悪用されていました。->saveXML()
ただし、周囲に含まれるノードが 1 つ必要です (たとえば、出力は です<div>...somecontent and nodex....</div>
。または、周囲のタグが 1 つ必要ない場合は、ノードの子をループします。
$html = '';
foreach($rootnode->childNodes as $node){
$html .= $rootnode->ownerdocument->saveHTML($node);
}
于 2012-06-26T22:25:41.497 に答える