ホームページ > バックエンド開発 > PHPチュートリアル > XML内のデータを取得するための正規表現

XML内のデータを取得するための正規表現

WBOY
リリース: 2016-06-23 13:26:38
オリジナル
1296 人が閲覧しました


<アイテム ID="1">20110524
<アイテム ID="7"><値>値>

値>
13.79
<アイテム ID="1"><値>20110525
<アイテム ID="7"><値>
<アイテム ID="8">13.86




これは XML ファイルの一部です。 value タグの後ろにある値を 1 つずつ取り出して、レコードの数を把握するのが最善です。
は、
function value($a,$b,$c,$d,$n){
.......
}
for(i=1;i<) など、独自に定義した関数に適用できます。 ;(レコード数); i++){
value($a,$b,$c,$d,$i);
ループ数:
value(13.82,13.94,13.79,13.85, 1)
value(13.82,13.86,13.58,13.60,2) の 2 番目の実装




ディスカッションへの返信 (解決策)

XML データが取得できれば、必ずしも正規表現は必要ありません。機能は使えます内部は大丈夫です。 。皆さん、ありがとうございました!

php は特別なメソッドを提供しています

$s =<<< XML<Record><Item Id="1"><Value>20110524</Value></Item><Item Id="7"><Value>13.82</Value></Item><Item Id="8"><Value>13.94</Value></Item><Item Id="9"><Value>13.79</Value></Item><Item Id="11"><Value>13.85</Value></Item></Record><Record><Item Id="1"><Value>20110525</Value></Item><Item Id="7"><Value>13.82</Value></Item><Item Id="8"><Value>13.86</Value></Item><Item Id="9"><Value>13.58</Value></Item><Item Id="11"><Value>13.60</Value></Item></Record>XML;$x = simplexml_load_string("<root>$s</root>");foreach($x->Record as $node) {  $t = array();  foreach($node->Item as $v) $t[] = current($v->Value);  print_r($t);}
ログイン後にコピー
Array(    [0] => 20110524    [1] => 13.82    [2] => 13.94    [3] => 13.79    [4] => 13.85)Array(    [0] => 20110525    [1] => 13.82    [2] => 13.86    [3] => 13.58    [4] => 13.60)
ログイン後にコピー


$count=preg_match_all('/<Record>(.+?)<\/Record>/is',$str,$m);echo $count;preg_match_all('/<Value>(.+?)<\/Value>/is',$str,$values);echo "<pre class="brush:php;toolbar:false">";print_r($values[1]);echo "
";/*2Array( [0] => 20110524 [1] => 13.82 [2] => 13.94 [3] => 13.79 [4] => 13.85 [5] => 20110525 [6] => 13.82 [7] => 13.86 [8] => 13.58 [9] => 13.60)*/
ログイン後にコピー

上の 2 人のマスターに感謝します。あなたの方法に従って問題は解決されました ~~ ふふ

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