ホームページ > php教程 > php手册 > PHPのXML読み込みメソッド入門

PHPのXML読み込みメソッド入門

WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWB
リリース: 2016-06-21 08:52:13
オリジナル
843 人が閲覧しました

1. XML とは何ですか?

XML (Extensible Markup Language) は、HTML と同様に拡張可能なマークアップ言語です。SGML (Standard Generalized Markup Language) です。 XML は、インターネット環境におけるクロスプラットフォームのコンテンツ依存テクノロジであり、現在、構造化ドキュメント情報を処理するための強力なツールです。拡張マークアップ言語 XML は、一連の単純なタグを使用してデータを記述する単純なデータ ストレージ言語です。これらのタグは、バイナリ データよりも多くのスペースを必要としますが、XML は非常にシンプルで習得が簡単です。そして使用します。

XML には、データの保存、データの交換、さまざまな種類のアプリケーション ソフトウェアのプロンプト データなど、さまざまな用途があります。

2番目、phpでxmlを読む方法

XML ソース ファイル



<張英>
張英
<性別>男性
28


タンク
<性別>男性
28

1) DOMDocument は xml を読み取ります

$doc = 新しい DOMDocument()
$doc->load('person.xml') //xml ファイルを読み込みます
$humans = $doc->getElementsByTagName( "humans" ); //人間タグのオブジェクト配列を取得します
foreach( $humans as $human )
{
$names = $human->getElementsByTagName( "name" ); // 名前
のタグのオブジェクト配列を取得します。 $name = $names->item(0)->nodeValue; //
などのノードの値を取得します。 $sexs = $human->getElementsByTagName( "セックス" ); $sex = $sexs->item(0)->nodeValue; $olds = $human->getElementsByTagName( "old" ); $old = $olds->item(0)->nodeValue; エコー "$name - $sex - $oldn"; }
?>




2) simplexml は xml を読み込みます

$xml_array=simplexml_load_file('person.xml') //XML のデータを配列オブジェクトに読み込みます foreach($xml_array as $tmp){

echo $tmp->name."-".$tmp->sex."-".$tmp->old."

} ?>




3) PHP 正規表現を使用してデータを記憶

$xml = ""; $f = fopen('person.xml', 'r'); while( $data = fread( $f, 4096 ) ) { $xml .= $data

}

fclose( $f ); // 上のデータを読み取ります preg_match_all( "/(.*?)/s", $xml, $humans ); // 一番外側のタグ
の内容と一致します。 foreach( $humans[1] as $k=>$human )
{
preg_match_all( "/(.*?)/", $human, $name ); // 名前を一致させます
preg_match_all( "/(.*?)/", $human, $sex ); // 性別を一致させます
preg_match_all( "/(.*?)/", $human, $old ); // 年齢を一致させます
}
foreach($name[1] as $key=>$val){
echo $val." - ".$sex[$key][1]." - ".$old[$key][1]."
; }
?>





4)xmlデータを読み取るxmlreader

$reader = 新しい XMLReader()

$reader->open('person.xml'); // XML データを読み取ります

$i=1; while ($reader->read()) { //を読み取るかどうか if ($reader->nodeType == XMLReader::TEXT) { //ノードのタイプを決定します

if($i%3){

echo $reader->value; // ノード の値を取得します。 }その他{
echo $reader->value."
; }
$i++;
}
}
?>





3、まとめ

XML を読み取る方法はいくつかありますが、いくつか例を挙げます。上記の 4 つのメソッドはすべて、タグ Zhang Ying 内のデータを読み取ることができますが、最初の 3 つのメソッドの XML 読み取り機能の設計の焦点は異なります。 value in は jquery の text() メソッドと同等ですが、xmlreader はタグ内の値を読み取ることではなく、タグの属性を読み取り、送信されるすべてのデータを配置することに重点を置いています。ただし、上で書いたメソッドは、xml ファイルが指定されており、xml ファイルを作成したくないため、依然としてタグ内の値を受け取ります。

例を挙げて説明します。

xmlreader の設計の焦点は、データ内の name sex old の値を読み取ることですが、 の内容を読み取るのはさらに面倒です。 jquery の attr(”) に相当します。

上記はあくまで個人的な意見ですので、ご了承ください。皆さんのお役に立てれば幸いです。



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