1.PHP DOM (1)
Php の DOM は JavaScript とは異なり、属性用に別のノードを追加する必要はありません。
2.メインカテゴリー
DOMDocument: ドキュメントクラスDOMNodeList: ノードリストクラス
DOMNode: ノードクラス
DOMElement: 要素クラス
3. DOMDocumentクラス
3.1 ドキュメントオブジェクトの作成DOMDocument::__construct ([ string $version [, string $encoding ]] )
[, string $encoding ]]: 文字セット
3.2. XML ファイルをロードする
混合 DOMDocument::load ( string $filename)
String $filename: ロードする XML ファイルの名前
3.3. ノードを取得する
DOMNodeList DOMDocument::getElementsByTagName (文字列名)
文字列名: 取得するノード名
例: Demo.php
リーリーdemo.xml
リーリー4. DOMNodeListクラス(上の人がNodeListノード)
1. 長さ
現在のノードリストにはノードがいくつありますか
2. DOMElement DOMNodelist::item (int $index)
インデックスのあるノードを選択します
int $index:インデックス
5、DOMNodeクラス 1.nodeValue ノードの値
6、属性の読み取りについて 1. bool DOMElement::hasAttribute (string $name)
ある属性を持っているかどうかを判定する(ある属性があるかどうかだけを判断する)
文字列 $name: 属性名
2. bool DOMNode::hasAttributes (void)
属性があるかどうかを判断します (属性がある限り true を返します)
3. string DOMElement::getAttribute ( string $name )
指定された属性の属性値を取得します
文字列 $name: 属性名
例 2. コヒーレントな操作を使用した出力リーリー
例3: リーリー 前の例では 1 つのデータしか取得できませんでしたが、全員に関する完全な情報を取得するにはどうすればよいでしょうか。
例 4:
php
header ('content-type:text/html;charset=gb2312');
$dom = new DOMDocument ('1.0', 'utf-8');
$dom->load ('demo01.xml');
// すべての人物ノードを取得します
$persons = $dom->getElementsByTagName ( 'person' );
// 合計人数を取得します
$count = $人->長さ;
for($i = 0; $i ) {
// $person は i 番目の人を表します
$person = $persons->item ( $i );
エコー'番目の' . ($i + 1) 。
if ($person->hasAttribute ( 'id' )) {
echo '学生ID: ' . $person->getAttribute ( 'id' );
}
echo 'Name: ' . $person->getElementsByTagName ( 'name' )->item ( 0 )->nodeValue;
echo '年齢: ' . $person->getElementsByTagName ( 'age' )->item ( 0 )->nodeValue;
エコー '
';
}
?>