Webサービスを利用してXMLデータを取得するスクリプトをPHPで書いています。レンタルサーバの関係でバージョンは4.4.4しか使えません。
XMLを扱う関数というと、PHP5ではsimpleXMLやXMLReaderなどがあるようで、各要素へアクセスするにも
$xml=simplexml_load_file('books.xml');
foreach($xml->book as $book){
....
という感じでオブジェクトとしてアクセスできるようですが、こういうのをPHP4で実現する方法はないのでしょうか?例えば入れ子になったデータだと、深い階層にたどりつくために
foreach($results as $key => $value){
foreach($value $key2 => $value2){
foreach($value $key3 => $value3){
...
}
}
}
みたいな感じで書いているのですが、まったくスマートではないですし、なにか間違っているような気がします。良い方法があればお教えください。よろしくお願いいたします。
No.1ベストアンサー
- 回答日時:
たいていは何らかのパッケージやクラスを使うのではないでしょうか。
私はPEARのパッケージを使っています。
http://pear.php.net/package/XML_Serializer
検索すると、いろいろサンプルも見つかりますよ。
PHP4にもDOM XML関数がありますが、大量にパースするにはちょっと不便だったりします。
http://au.php.net/manual/ja/ref.domxml.php
ありがとうございます!XML_Serializerは、他のパッケージをインストールする時に依存関係ですでにインストールしていたのですが、上記のようなケースで使えるのですね。知りませんでした。さっそくサンプルを探してみたいと思います。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- PHP PHPで画像の渡しが上手く行きません。 1 2023/02/02 09:39
- XML XML同じ名前の要素を自動で集約するツール 1 2022/04/11 09:21
- Visual Basic(VBA) vbaのエラー対応(実行時エラー7:メモリが不足しています) 4 2023/04/24 00:20
- PostgreSQL 画像とカテゴリーを出力したいのですが、取得の条件を付ける方法がわかりません。 2 2022/05/01 18:03
- Visual Basic(VBA) VBA 別ブックからの転記の高速化について VBA 別ブックからの転記の高速化についてご教授下さい。 19 2022/07/26 13:07
- PHP 入力した部分を表示させたまま(保持)するにはどうすれば良いでしょうか? 1 2023/01/25 11:14
- Visual Basic(VBA) 3つのプロシージャをまとめたら実行時エラー発生で対応不能 6 2022/05/17 01:47
- PHP 文字列を段落で分ける方法を教えて下さい。 2 2023/03/09 10:03
- Visual Basic(VBA) vbaの構文の修正相談(xmlファイルを順に開いてコピペ作業) 1 2023/04/22 01:18
- 数学 この数学問題、スマートに解く方法を教えてください。 3 2023/01/26 23:17
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
VB.NET でのLaod/unLoad につ...
-
名古屋の栄と錦は治安悪い?
-
エアー漏れの流量の計算式を教...
-
NumericUpDownの数値を選択済み...
-
mailの送信音がしなくなったの...
-
PHP4でのXMLデータの取り扱い
-
フォームを開く時のイベント処理
-
『μg』の読み方と意味。
-
ソリッドの凸凹判定
-
C++の例外処理
-
php,htmlのエディターでutf-8固...
-
フォーカスの制御
-
PHPでテトリスって作れるかな?
-
コンピュータ言語paythonのエデ...
-
word
-
イラレでダブルクリックで文字...
-
PowerPoint SmartArtの箇条書...
-
illustratorとExcelは連携出来...
-
PDF→CSVへ変換
-
googleサーチコンソールでの重...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
名古屋の栄と錦は治安悪い?
-
『μg』の読み方と意味。
-
NumericUpDownの数値を選択済み...
-
VB.NET でのLaod/unLoad につ...
-
フォームを開く時のイベント処理
-
VB.NETのテキストボック...
-
テキストボックスからフォーカ...
-
vba メモリーリーク
-
ob_start()した後、ob_flush()...
-
C#での変数スコープ?
-
項目数は英語で
-
シリアルフラッシュメモリをな...
-
mailの送信音がしなくなったの...
-
TextBoxにカーソルがあるかない...
-
フリップフロップについての質...
-
シリアル通信について
-
ACCDE形式でクエリの警告メッセ...
-
ブック開いたときのフォーカス指定
-
携帯電話のマイクロSDカードに...
-
VBのレコードセットを閉じない...
おすすめ情報