ホームページ > バックエンド開発 > PHPチュートリアル > PHP で XML 関数を使用する方法

PHP で XML 関数を使用する方法

王林
リリース: 2023-05-20 10:00:01
オリジナル
1059 人が閲覧しました

XML は一般的に使用されるデータ交換形式であり、PHP には XML データを処理するための関数とクラスが多数あり、それらを使用して XML ドキュメントの読み取り、解析、作成、変更を簡単に行うことができます。この記事では、PHP で XML 関数を使用する方法を紹介します。

  1. XML 解析関数

PHP には、simplexml_load_file()、simplexml_load_string()、および xml_parse() という 3 つの一般的に使用される XML 解析関数があり、これらは読み取りに使用できます。 XML ドキュメントを解析します。

simplexml_load_file() 関数は、XML ドキュメントをパラメータとして受け取り、単純な XML オブジェクトを返します。例:

$xml = simplexml_load_file('test.xml');

$xml オブジェクトは、XML ノードを配列のように操作できます。例:

echo $ xml- >book[0]->title; // 最初の本のタイトル値を出力します。node

simplexml_load_string() 関数は、simplexml_load_file() 関数と似ています。XML 文字列は次のように使用できます。パラメータを指定し、単純な XML オブジェクトを返します。

xml_parse() 関数は、XML ドキュメントのノードと属性を 1 つずつ解析し、コールバック関数をトリガーできます。例:

function startElement($parser, $name, $attrs) {
echo "開始ノード $name
";
}

function endElement($ parser , $name) {
echo "終了ノード $name
";
}

$parser = xml_parser_create();
xml_set_element_handler($parser, "startElement", " endElement ");

$xml = file_get_contents("test.xml");
xml_parse($parser, $xml);

xml_parse() 関数は、次を使用して作成する必要があります。 xml_parser_create() 関数パーサーを使用し、xml_set_element_handler() 関数を使用してノードの開始および終了コールバック関数を設定します。

  1. XMLWriter クラス

XMLWriter は、XML ドキュメントを作成するために使用される PHP のクラスです。 startDocument()、endDocument()、startElement()、endElement()、writeElement()、writeAttribute() など、XML ドキュメントを構築するための一連のメソッドを提供します。

次に、XMLWriter クラスを使用して XML ドキュメントを作成する例を示します。

$xmlWriter = new XMLWriter();
$xmlWriter->openURI('output.xml ');
$xmlWriter->startDocument('1.0', 'UTF-8'); // XML バージョンとエンコーディングを設定します
$xmlWriter->startElement('root');
$ xmlWriter-> writeElement('book', 'PHP 入門');
$xmlWriter->writeElement('price', '19.99');
$xmlWriter->endElement(); / / ルート ノードの終了
$xmlWriter->endDocument(); //ドキュメントの終了

#上記の例では、XMLWriter クラスを使用して、output.xml という名前の XML ドキュメントを作成し、 startDocument() 関数を使用して XML バージョンとエンコーディングを設定し、startElement() 関数と endElement() 関数を使用してルート ノードを作成し、writeElement() 関数を使用して書籍ノードと価格ノードの値を書き込みます。

    DOM 拡張機能
PHP の DOM 拡張機能は、XML ドキュメントを処理する柔軟な方法を提供します。また、XPath 式を使用して XML ドキュメントをクエリしたり、ノードや属性を変更したりすることもできます。 . .

次は、DOM 拡張機能を使用して XML ドキュメントを読み取り、変更する例です。

$dom = new DOMDocument();

$dom->load('test.xml ' );
$books = $dom->getElementsByTagName('book');
foreach ($books を $book として) {
$title = $book->getElementsByTagName('title') - >item(0);
$title->nodeValue = 'PHP 上級ガイド';
}
$dom->save('test.xml');

上記の例では、DOMDocument クラスを使用して XML ドキュメントをロードし、getElementsByTagName() 関数を使用してノード配列を取得し、item() 関数を使用して単一のノードを取得し、nodeValue 属性を使用してノードを変更します。値を指定し、最後に変更した XML ドキュメントを保存します。

概要

PHP には、XML データを処理するためのさまざまな関数とクラスが用意されているため、PHP で XML ドキュメントを操作するのが非常に便利です。開発者は、実際のニーズや個人の好みに基づいて、さまざまな XML 処理方法を選択できます。

以上がPHP で XML 関数を使用する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート