PHP は XML の読み取りが非常に遅い (データ量が大きい) PHP を使用して、関数 getxmldata() 関数を使用してマーチャントの製品 API を XML 形式で読み取りますが、データが大きすぎるため、実行時間が頻繁にタイムアウトになります。 。このような大きな XML を読み取る良い方法はありますか?部分ごとに読む方法はありますか?具体的には、残ったポイントはすべて付与されます。不滅の皆様、よろしくお願いします〜 共有先: -----解決策--------------------------------そうですね、SimpleXML と DOMDocument はどちらも xml を一度にメモリにロードします ファイルが大きい場合は、XML 構文解析関数 の使用を検討してください。 たとえば、マニュアル $file = "data.xml"; $depth = array(); function startElement($parser, $name, $attrs) { global $depth; for ($i = 0; $i < $depth[$parser]; $i++) { echo " "; } echo "$name\n"; $depth[$parser]++; } function endElement($parser, $name) { global $depth; $depth[$parser]--; } $xml_parser = xml_parser_create(); xml_set_element_handler($xml_parser, "startElement", "endElement"); if (!($fp = fopen($file, "r"))) { die("could not open XML input"); } while ($data = fread($fp, 4096)) { if (!xml_parse($xml_parser, $data, feof($fp))) { die(sprintf("XML error: %s at line %d", xml_error_string(xml_get_error_code($xml_parser)), xml_get_current_line_number($xml_parser))); } } xml_parser_free($xml_parser); ログイン後にコピー の例