xml知識の概要
xml構造
ドキュメントステートメント:
属性
要素は複数の属性を持つことができます
属性値は引用符で囲む必要があります
(一重引用符または二重引用符) )属性名の命名規則は要素の命名規則と同じです要素内の属性は繰り返してはなりません
タグの属性で表される情報も変更して記述することができますサブ要素の形式処理命令は""
で始まり、最後に
"?>"で終わる必要がありますxmlCommand
xml-stylesheetコマンド
例:コメント:
コメントはブラウザに表示できます
XML ステートメントの前にコメントはありません
,コメントはネストできません
CDATAsection
構文:Content]]>xml DTD
Document Constraints
制約ドキュメントは、xml許可される要素名、属性、要素の出現順序などを定義します。
DTD 制約ドキュメント分類
内部DTD
ルート要素 [DTD 制約
]>パブリックDTD
ルート要素
PUBLIC "DTDアイデンティティ名" "PublicDTDURI">
DTD
制約の書き込み 要素の定義 ( タグまたはタグ)要素名 要素タイプ >要素タイプ
(#PCDATA) :このタイプには文字データが含まれており、子要素を含めることはできません
EMPTY:This type には子要素やテキストを含めることはできず、属性を持つことができます
ANY : この要素にはすべてのコンテンツが含まれます (ルート要素に適用されます)(child elements) : 子要素は 1 回だけ出現できるように定義します
(子要素1
, 子要素
2, ...) : 要素は指定された名前と順序で表示されます
(子要素
+)
: 現在の要素が表示されます 1+ 回
(子要素*) : 現在の要素が表示されます 0+ 回
(子要素? ) : 現在の要素クエリ 0 または 1
回 (子要素 1 | 子要素 2)
: 相互に排他的な要素は、選択1属性の定義 基本構文: 要素名 属性名 属性タイプ デフォルト値 >属性タイプ
CDATA : 文字または数値(テキストタイプ)( en1|en2|en....) : 列挙型 ID: 一意の属性 IDREF: 定義された
ID
属性への参照
#REQUIRED : Required (デフォルト値)
#暗示:オプティオンル#修正#修正:
fixedvaluevalue:デフォルト値を直接使用してentityを定義するentitiety エンティティ名
"エンティティの値
">
引用構文: [
で使用されるxml
]
&
エンティティ名;
パラメータエンティティ[パラメータエンティティは、外部
DTD、外部
dtdで定義されている必要がありますで使用]基本的な文法: エンティティ名
引用構文:
%エンティティ名;
PHPpar歌う XML データ
PHP DOM モデル分析 DOMNode : ノードクラス
DOMElement : Nodeクラス
DOMDocumentクラス:
基本構文: DOMDocument::__construct( string $version 、文字列 $encoding ){}
load
メソッドの使用法domdocument_obj->load ( 'xml_filename.xml' ) ;
itemメソッドの使用法:
domdocument_obj -> item(intindex);
ケース: PHP DOM
クエリ操作【
1】メモリ空間を開いて”
麺”$dom = new DOMDocument('1.0','utf-8');
[2]xmlファイルをメモリにロードして、
domツリー
$ dom-> load( 'test.xml'); 】同じレベルの兄弟ノードを取得して文字列を形成します $names = $dom->getElementsByTagName( '要素名');【
4】
を取得nameノード名が Wang Dachui であるノード情報、いわゆるポイント $name = $names ->nodeValue;
$dom->getElementsByTageName( 'name')->item(0)->nodeValue;PHP DOM 属性操作
#ノードが指定された属性を持っているかどうかを判断するbool DOMElement::hasAttribute(string $name );#ノードが指定された属性を持つかどうかを判断する
bool DOMNode::hasAttributes(void);#
ノードの指定された属性の値を取得するstring DOMElement::getAttribute (string $name);PHP DOM
操作の追加、削除、変更、確認PHP DOM
操作の追加:新しいノードを作成するメソッド:
DOMDocument :: createElement(string name [ ] );
新しいノードを追加:
DOMDocument :: appendChild(DOMNode $newnode); 保存操作:
DOMDocument ::saveXML(ファイル名);
PHP DOM 削除操作:
ノードの削除操作:
DOMNode ::removeChild( DOMNode $nodeName ) ;
PHP DOM Change操作:
ノードの更新操作:
/**
*
@param string $newNode更新されたノード
* @param string $oldNode 古いノード
*/
DOMNode :: replaceChild( DOMNode $newNode , DOMNode $oldNode ) ;
PHP DOM 属性操作:
に属性を追加ノード:
/***
@param string 追加する属性の名前
* @param string 属性の値
*/
setAttribute(string $name , string $value );
ノード属性を更新します:
/***
@param string 更新する属性の名前
* @param string 属性の値
* /
setAttribute ( string $name , string $value ) ;
指定されたノードの属性を削除します:
/***
@param string 削除する属性の名前
*/
removerAttribute ( string $name );
基本文法:
/*
* @param string $filename ロードされるxml
ファイル名
*/simpleXMLElement simplexml_load_file(string $filename );
+ )
xml Data
を取得するメソッド
は
を通じて取得されますforeach() Method 0]->nodeName
直接取得
xml 要素を追加/***
@param string $str定義されたxml
文字コンテンツ
*/
SimplexmlElement::addChild(string $name [ ,string $vaule]);
# 追加したら保存します/**
* @param string $name 追加された要素の名前
* @param string $value 値を設定します
*/
simpleXMLElement :: asXML(string $filenmae ); xml 属性クエリ
/**
* @param string $filename 保存された
xmlファイル名
*/
SimpleXMLElement ::attributes()->attr_name;xml
属性の追加/**
* @param string attr_name
追加された属性の名前
*/smpleXMLElement::addtribute( string $ name , [string $value [,string $namespace ]]
括弧式@Attribute
上記は、Guangzhou Chuanzhi Wang からまとめられた XML 知識ポイントの整理を、関連コンテンツも含めて紹介しています。PHP チュートリアルに興味のある友人にとって役立つことを願っています。