ホームページ >バックエンド開発 >PHPチュートリアル >PHP はストリーミングを使用して大きな JSON ファイルを効率的に処理するにはどうすればよいですか?
PHP での大きなファイルのストリーミング JSON 処理
大きな JSON ファイル (最大 200MB になる可能性があります) の処理は、PHP で課題となる可能性があります。 JSONReader ライブラリは、JSON データをストリーミングするための SAX のようなインターフェイスを提供することでソリューションを提供します。
JSON ファイルは通常、さまざまなプロパティを含むオブジェクトを含むオブジェクトの配列で構成されます。ファイル全体をメモリに読み込むのは現実的ではないため、ストリーミング アプローチが望ましいです。
JSONReader の実装
JSONReader ライブラリを使用すると、次のことが可能になります。
例: JSON オブジェクトの処理
次を使用して、JSON ファイル内の個々のオブジェクトを処理する方法を見てみましょう。 JSONReader:
use pcrov\JsonReader\JsonReader; $reader = new JsonReader(); $reader->open("large.json"); $reader->read(); // Root array $depth = $reader->depth(); while ($reader->next() && $reader->depth() > $depth) { echo "Processed object: " . json_encode($reader->value()) . "\n"; } $reader->close();
例: 名前付き要素の読み取り
JSON ファイルから名前付き要素を読み取るには:
$reader = new JsonReader(); $reader->open("json-file.json"); while ($reader->read()) { if ($reader->name() !== null) { echo "Name: {$reader->name()}, Value: {$reader->value()}\n"; } } $reader->close();
適応異なる JSON 構造へ
JSONReader ライブラリは、複雑な JSON 構造を効果的に処理します。提供されている例は、オブジェクトの処理と名前付き要素の取得を示しています。特定の JSON ファイル構造とデータ処理のニーズに基づいてアプローチを調整します。
以上がPHP はストリーミングを使用して大きな JSON ファイルを効率的に処理するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。