0

ホームページに 50 を超える XML ファイルをロードしています。ここで見ることができる構造の例:

http://api.eve-central.com/api/marketstat?usesystem=30000142&hours=24&typeid=3683&minQ=10000

価格「販売」->「最小」が必​​要です。foreach()そのため、現在ループを実行し、取得したら停止します。しかし、私のページはこれを処理するのに 30 秒以上必要です。次のようなデータに直接入力する必要があると思います。

$min = $xml -> children() -> children() -> sell -> min;

だれか正しい算数を教えてくれませんか?

Thxステップ

4

2 に答える 2

1

関数を使用simplexml_load_fileします。とても簡単で速いです!

$xml = simplexml_load_file('http://api.eve-central.com/api/marketstat?usesystem=30000142&hours=24&typeid=3683&minQ=10000');

echo $xml->marketstat->type->sell->min; // 257.99

そしてSimpleXMLElementそしてfile_get_contents

$xml_str = file_get_contents('http://api.eve-central.com/api/marketstat?usesystem=30000142&hours=24&typeid=3683&minQ=10000');
$xml = new SimpleXMLElement($xml_str);

echo $xml->marketstat->type->sell->min;  // 257.99
于 2013-08-26T12:36:47.317 に答える
0

興味深いことに、私は現在 eve-central API も使用しています。ただし、重要なヒントをお伝えする必要があります。eve-central では、複数のアイテムのリクエストを渡すことができます。

http://api.eve-central.com/api/marketstat?typeid=3683&typeid=3684&typeid=3685&typeid=3686&typeid=3687&typeid=3688&typeid=3689&usesystem=30000142&hours=24&minQ=10000

そのように。

必要なすべての ID を取得する素敵な for ループを作成し、そのような URL を作成します。すべての &typeid= の追加が完了したら、 &usesystem=30000142&hours=24&minQ=10000 を追加し、simplexml_load_file(ここに URL の名前); を実行します。

これで、必要なすべての項目について一度に取得した xml 出力に対して foreach を実行できます。

于 2014-01-21T12:21:28.750 に答える