PHP 操作 xml_PHP チュートリアル

WBOY
リリース: 2016-07-13 10:25:49
オリジナル
818 人が閲覧しました

操作するデータ

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




">

XML のいくつかの基本概念
1. ノード: ノードは、XML を処理する際に多くのプログラミング言語で使用される、比較的広い概念です。また、ドキュメント全体が 1 つのノードに属します。これは、XML ドキュメントのそれぞれの独立した小さな部分が 1 つのノードであることを意味し、 も同様です。 ;、name="XXXX" は、 タグであり、著者の名前である David Flanagan もテキスト ノードです。
2. 要素: 多くのプログラミング言語では XML 処理が行われます。ノードは API を統合する必要があるため、あまり多くのメソッドは存在しません。要素はノードのサブセットです。簡単に言うと、要素の操作方法は、のようなタグだけです。
3. 属性: <> の XX="OO" のようなものはすべて属性ノードです。必要に応じて、XML にも言語を使用した記号が含まれます。 use これらの特殊文字はエスケープする必要があります


DOMDocumentオブジェクト
私はDOMDocumentオブジェクトを使ってxmlを操作しています もちろんsimpleXmlよりも科学的だと感じたのは全くの個人的な感想です。 。 DOMDocument には、よく使用されるプロパティとメソッドがいくつかあります。



xmlをロード


PHP 操作 xml_PHP チュートリアルコードをコピー

コードは次のとおりです:
PHP 操作 xml_PHP チュートリアル
$path=$_SERVER["DOCUMENT_ROOT"].'/books.xml';
$books=new DOMDocument();

$本-> ロード($path);


ノードと属性の読み取り/走査
コードをコピー

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


$bookElements=$books->getElementsByTagName('book');
foreach($bookElements as $book){

foreach ($book->attributes as $attr) {
echo strtoupper($attr->nodeName).' —— '.$attr->nodeValue.'< ;br/> '; }

エコー '

'; }

もちろん、多くの属性について、1 つだけを読み取りたい場合は、 item(index) メソッドを使用してインデックスによって読み取ることができます




コードをコピーします

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


echo $book- >attributes->item(1) ->nodeValue;

強力な xpath を通じてクエリすることもできます
PHP 操作 xml_PHP チュートリアル

コードをコピーします

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

強力な xpath を通じてクエリすることもできます
属性/ノードを変更する


コードをコピーする

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

foreach($bookElements as $book){
foreach ($book->attributes as $attr) {
); $ author->nodeValue=strtoupper($author->nodeValue);
}

}
$books->save($path);



属性を変更するには、nodeValue の変更に直接アクセスするか、変更を加えた後に setAttribute メソッドを使用することを忘れないでください。
PHP 操作 xml_PHP チュートリアル
コードをコピーします


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

$book->setAttribute($attr->nodeName,strtoupper($attr->nodeValue));$attr->nodeValue =strtoupper($ attr->nodeValue);

要素/属性を追加します

コードをコピーします


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

$newBook=$books->createElement('book'); #新しい要素を作成します $newBook->setAttribute ('name', 'PHP オブジェクト、パターン、実践');#新しいプロパティを作成する、方法 1
$publisher=$books->createAttribute('publisher');#新しい属性を作成します、方法 2
$publisher->nodeValue='Apress L.P';
$newBook->appendChild($publisher) ; #要素に属性を追加します
$author=$books->createElement('author');#子要素を作成する

$author->nodeValue='Matt Zandstra';
$newBook->appendChild($author);#子要素を追加する親要素

$books->documentElement->appendChild($newBook);#ノード全体を追加します

$books->save($path);

属性/ノードを削除します

コードをコピーします


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

$first=$bookElements->item(0); $first->removeAttribute('publisher');
$second=$bookElements->item(1);
$second->parentNode->removeChild($second);

$books->save($path);




初心者向けのPHP記事には間違いもたくさんあると思いますので、皆さんで批判・修正して一緒に進歩していただければ幸いです。 PHP 操作 xml_PHP チュートリアル


http://www.bkjia.com/PHPjc/824929.htmlwww.bkjia.com

tru​​ehttp://www.bkjia.com/PHPjc/824929.html技術記事操作するデータ コピー コードは次のとおりです。 ?xml version="1.0"? Books book name="JavaScript: The Defiitive Guide" Publisher="O'Reilly Media, Inc." authorDavid Flanagan/author /bo...
関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート
私たちについて 免責事項 Sitemap
PHP中国語ウェブサイト:福祉オンライン PHP トレーニング,PHP 学習者の迅速な成長を支援します!