2011-12-22 5 views
0

DomElementとDomTextを使用するとエンティティの処理に違いがあるのはなぜですか?PHP DOM DomText対エンティティのDomElement処理

コード例:

$text = 'this&that or this& that'; 
$document = new \DOMDocument; 

$p1 = $document->createElement('p', $text); 
// versus 
$p2 = $document->createElement('p'); 
$p2->appendChild($document->createTextNode($text)); 

var_dump($p1->nodeValue); // thisthat 
var_dump($p2->nodeValue); // this&that or this&that 

答えて

1

差がcreateElementが(アクセント)を受け入れ、マークアップで不正な文字とそうならば、文字

+0

のこの種を無視していないということです。しかし、なぜこの別の治療に?このdomは指定されていますか? – koen

+1

にはドキュメントがありません。createElementは入力値を処理しません。この場合は手動で行う必要があります。これはcreateTextNode処理です。これはxml –

関連する問題