ホームページ >ウェブフロントエンド >jsチュートリアル >DOM を使用して、指定されたノード名データを js_javascript スキルの新しい XML ファイルにコピー (クローン) するコード

DOM を使用して、指定されたノード名データを js_javascript スキルの新しい XML ファイルにコピー (クローン) するコード

WBOY
WBOYオリジナル
2016-05-16 18:04:221165ブラウズ
コードをコピー コードは次のとおりです:

/*

<記事>
<タイトル名="t1"> ;
<コンテンツ>/コンテンツ>

name=" t2">title2
content2
>< /article>
*/
/*
DOM を使用して、次の 3 つのクラスの関連するナレッジ ポイントを使用して、指定されたノード名データを新しい XML ファイルにコピー (クローン) します。 DOMNode
1.DOMNodeList DOMDocument::getElementsByTagName ( string $name )
2.DOMNode DOMNodelist::item ( int $index )
3.DOMNode DOMNode::cloneNode ([ bool $deep ] )
*/
if(!function_exists('l')) {
function l() {
echo '
************** ******** ***************
'
}
}
if(!function_exists('cp_xml'; )) {
/*
* 指定されたノード要素情報を新しい XML ファイルにコピーします
* @param $dom: ソース XML ファイルの DOM オブジェクト
* @param $newdom: DOM オブジェクト新しい XML ファイルの名前
* @param $node: コピーされたノード要素の名前を指定します
* @param $file: 新しく生成された XML ファイルの名前
* @param $attribute:コピーされたノード要素の属性名
* @return void
*/
function cp_xml($dom,$newdom,$node,$file,$attribute = '') {
$contents = $dom->getElementsByTagName($node);
$clone = array();
for($i = 0 ; $ilength ; $i ) {
$node = $contents-> item($i);
if($node->hasAttributes() && !empty($attribute)) {
$attr[ ] = $node->getAttribute($attribute);
}
$clone[] = $node->cloneNode(true);
var_dump($attr); >$root = $newdom->createElement('root');
$newdom->appendChild($root);
for($i = 0 ; $i$title = $newdom->createElement( $clone[$i]->nodeName,$clone[$i]->nodeValue);
$root->appendChild($) title);
if(count($attr)>0 && !empty($attribute)) {
//属性名を作成
$aname = $newdom->createAttribute($attribute);
$title->appendChild($aname);
//属性値を渡す
$aval = $newdom->createTextNode($attr[$i]); ;appendChild($aval);
}
}
$newdom->save($file);
}
}
if(file_exists("test10_12.xml") ) {
//例 1
$dom = new DOMDocument();
$newdom = new DOMDocument('1.0','utf-8'); "test10_12.xml");
$node = 'コンテンツ' ;
cp_xml($dom,$newdom,$node,$file); //例 2
$dom = new DOMDocument();
$newdom = new DOMDocument('1.0','utf-8');
$dom->load("test10_12.xml") );
$node = 'タイトル';
$ ファイル = '11_2.xml'
cp_xml($dom,$newdom,$file,$attribute = '名前'); 🎜>}
?>

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。