検索
ホームページphp教程php手册DOM を使用して PHP5 の XML 実装コードを制御する

DOM を使用して PHP5 の XML 実装コードを制御する

Jun 13, 2016 pm 12:16 PM
domphp5xmlコード使用成し遂げるコントロール操作するデモ単純詳しい

次の例は、XML での DOM の操作を簡単に示しています。詳細な説明については、コード

のコメントを参照してください。 コードをコピーします。 コードは次のとおりです。



/************************************************
* * PHP5 で XML を使用する
** 参考サイト:
** http://cn.php.net/manual/zh/ref.dom.php
** 以下のコードは PHP5 のサポートが必要です
************************************************/

// まず DOMDocument オブジェクトを作成します
$dom = new DomDocument(); //次に XML ファイルをロードします
$dom ->

//出力 XML ファイル
//header("Content-type: text/xml") ;charset=gb2312" );
//echo $dom ->saveXML();

//XML ファイルを保存、戻り値は int (バイト単位のファイル サイズ)
/ /$dom -> save("newfile.xml");

echo "


すべてのタイトル要素を取得:
"; -> ; getElementsByTagName("title");
foreach ($titles as $node){
echo $node -> "
";
//echo $node->firstChild->data . "
"
}

/*
echo "
ルート ノード ポイントはすべてのノードを横断します:
";
foreach ($dom->documentElement->childNodes as $items) {
//ノードが要素の場合 (nodeType == 1) 名前が item の場合、
if ($items->nodeType == 1 && $items->nodeName == "item") {
foreach ($items->childNodes) のループを継続します。 as $titles) {
//ノードが要素で名前が title の場合、それを出力します。
if ($titles->nodeType == 1 && $titles->nodeName == "title ") {
print $titles->textContent . "n";
}
}
}
}
*/

//XPath を使用してクエリ データ
echo "
XPath クエリを使用したタイトル ノードの結果:
$xpath = new domxpath($dom);
$titles = $ xpath->query(" /rss/channel/item/title");
foreach ($titles as $node){
echo $node->textContent."
";
}
/*
これは getElementsByTagName() メソッドの使用に似ていますが、Xpath の方がはるかに強力です
さらに詳しく見ると次のようになります:
/rss/channel/item[ Position() = 1]/title 最初に戻る すべての item 要素
/rss/channel/item/title[@id = '23'] id 属性を含み、値が 23 であるすべてのタイトルを返します
/ rss/channel/&folder&/title すべての記事要素を返します。 次のタイトル (翻訳者注: &folder& はディレクトリの深さを表します)
*/


// 新しいデータを DOM に書き込みます
$item = $dom->createElement("アイテム");
$title = $dom->createElement("タイトル");
$titleText = $dom->createTextNode("タイトル テキスト"); 🎜>$title->appendChild ($titleText);
$item->appendChild($title);
$dom->documentElement->getElementsByTagName('channel')->item( 0)->appendChild($ item);

//DOM からノードを削除
//$dom->documentElement->RemoveChild($dom->documentElement->getElementsByTagName( "channel")-> item(0));
//または xpath を使用してノードをクエリし、削除します
//$dom->documentElement->RemoveChild($xpath->query) ("/rss/channel")- >item(0));
//$dom->save("newfile.xml");

//DOM からのノード データを変更します🎜>//最初のタイトル ファイルを変更します。
//この場所は、新しいノードを作成してから古いノードを置き換えます。他に良い方法を持っている人がいたら教えてください
$firstTitle = $xpath->query("/rss/channel/item/title")->item(0); ->createElement("タイトル");
$newTitle->appendChild(new DOMText("これが新しいタイトル テキストです!!!"));
$firstTitle->parentNode- >replaceChild( $newTitle, $firstTitle);
//属性を変更
//$firstTitle = $xpath->query("/rss/channel/item/title")->item(0 ); >//$firstTitle->setAttribute("orderby", "4");
$dom->save("newfile.xml");

echo " View newfile.xml";

//次のコードは、php.net のホームページを取得して解析し、最初のコンテンツを返します。タイトル要素。
/*
$dom->loadHTMLFile("http://www.php.net/");
$title = $dom->getElementsByTagName("title"); print $title->item(0)->textContent;
*/
?>


以下は test.xml ファイルのコードです:



コードをコピー

コードは次のとおりです:





javascript
http://blog.csdn.net/zhongmao/category/29515.aspx
javascript
zh-chs言語>
.テキスト バージョン 0.958.2004.2001

zhongmaoクリエイター>
javascript を使用した Excel の出力
http://blog.csdn.net/zhongmao/archive/2004/09/15/105385.aspx
水、2004 年 9 月 15 日 13:32:00 gmt
http://blog.csdn.net/zhongmao/archive/2004/09/15/105385.aspx
http://blog.csdn.net/zhongmao/comments/105385.aspx
http://blog.csdn.net/zhongmao/archive/2004/09/15/105385.aspx#フィードバック
2
http://blog.csdn.net/zhongmao/comments/commentrss/105385.aspx
http://blog.csdn.net/zhongmao/services/trackbacks/105385.aspx
テストの説明


zhongmaoクリエイター>
javascript を使用した単語を出力
http://blog.csdn.net/zhongmao/archive/2004/08/06/67161.aspx
fri, 06 aug 2004 16:33:00 gmt
http://blog.csdn.net/zhongmao/archive/2004/08/06/67161.aspx
http://blog.csdn.net/zhongmao/comments/67161.aspx
http://blog.csdn.net/zhongmao/archive/2004/08/06/67161.aspx#フィードバック
0
http://blog.csdn.net/zhongmao/comments/commentrss/67161.aspx
http://blog.csdn.net/zhongmao/services/trackbacks/67161.aspx
テスト単語の説明


zhongmaoクリエイター>
xmlhttp
http://blog.csdn.net/zhongmao/archive/2004/08/02/58417.aspx
mon, 02 aug 2004 10:11:00 gmt
http://blog.csdn.net/zhongmao/archive/2004/08/02/58417.aspx
http://blog.csdn.net/zhongmao/comments/58417.aspx
http://blog.csdn.net/zhongmao/archive/2004/08/02/58417.aspx#フィードバック
0
http://blog.csdn.net/zhongmao/comments/commentrss/58417.aspx
http://blog.csdn.net/zhongmao/services/trackbacks/58417.aspx
xmlhttpaaa asd bb cc dd

チャンネル>

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

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

写真から衣服を削除するオンライン AI ツール。

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

Video Face Swap

Video Face Swap

完全無料の AI 顔交換ツールを使用して、あらゆるビデオの顔を簡単に交換できます。

ホットツール

VSCode Windows 64 ビットのダウンロード

VSCode Windows 64 ビットのダウンロード

Microsoft によって発売された無料で強力な IDE エディター

MinGW - Minimalist GNU for Windows

MinGW - Minimalist GNU for Windows

このプロジェクトは osdn.net/projects/mingw に移行中です。引き続きそこでフォローしていただけます。 MinGW: GNU Compiler Collection (GCC) のネイティブ Windows ポートであり、ネイティブ Windows アプリケーションを構築するための自由に配布可能なインポート ライブラリとヘッダー ファイルであり、C99 機能をサポートする MSVC ランタイムの拡張機能が含まれています。すべての MinGW ソフトウェアは 64 ビット Windows プラットフォームで実行できます。

EditPlus 中国語クラック版

EditPlus 中国語クラック版

サイズが小さく、構文の強調表示、コード プロンプト機能はサポートされていません

SAP NetWeaver Server Adapter for Eclipse

SAP NetWeaver Server Adapter for Eclipse

Eclipse を SAP NetWeaver アプリケーション サーバーと統合します。

Dreamweaver Mac版

Dreamweaver Mac版

ビジュアル Web 開発ツール