DOMElement klonlama ve iliştirme: 'Yanlış Belge Hatası'

1 Cevap php

Ben tam PHP'nin DOM API ile klonlama düğüm hakkında anlamadığınız bir şey var. Burada hızlı bir şekilde ben genelinde geliyorum sorunu çoğaltan bir örnek dosya.

$doc  = new DOMDocument( '1.0', 'UTF-8' );
$root = $doc->createElement( 'root' ); // This doesn't work either $root = new DOMElement( 'root' );
$doc->appendChild( $root );

$doc2  = new DOMDocument( '1.0', 'UTF-8' );
$root2 = $doc2->createElement( 'root2' );
$doc2->appendChild( $root2 );

// Here comes the error
$root2->appendChild( $root->cloneNode() );

Bu küçük parçacığını çalıştırdığınızda bir istisna atılır

Fatal error: Uncaught exception 'DOMException' with message 'Wrong Document Error'

Ben bir belgeden bir düğüm kapmak olamaz, klon, ve sonra başka bir belgeye eklemek?

1 Cevap

DOM eklemeden önce diğer belgeye düğümü almak için DOMDocument->importNode kullanın.