現在phpを使用してcsvをエクスポートしています。実装プロセスは、最初にファイルを生成し、次にデータをバッチでクエリし、書き込みが完了した後、ファイルを1つずつ書き込みます。ファイルをダウンロードします。 現在の問題は、大量のデータがある場合、php プログラムの実行後、ファイルがまだ書き込まれており、ダウンロード メソッドを実行できないため、ファイルをダウンロードできないことです。この問題を解決します?
現在phpを使用してcsvをエクスポートしています。実装プロセスは、最初にファイルを生成し、次にデータをバッチでクエリし、書き込みが完了した後、ファイルを1つずつ書き込みます。ファイルをダウンロードします。 現在の問題は、大量のデータがある場合、php プログラムの実行後、ファイルがまだ書き込まれており、ダウンロード メソッドを実行できないため、ファイルをダウンロードできないことです。この問題を解決します?
この量のデータでは、通常、単一の PHP リクエストがタイムアウトになります。
php ファイルはリクエストごとに 10 個のデータのみを処理し、追加は csv ファイルに書き込まれ、単一のリクエストがすぐに返されることが推奨されます。
次に js プログラムを作成すると、データが処理されるまで ajax がこの php ファイルをループで呼び出し、Web ページのダウンロード アクションをトリガーします。このもう 1 つの利点は、フロントエンド Web ページに処理の進行状況をリアルタイムで表示できることです。
csv は本質的にプレーンテキストであるため、js と php を連携させることができます。js は複数のリクエストを開始して文字列をバッチで渡し、最後に js をマージしてファイルを生成します (リンクはデータの形式です)
ファイルが完全に生成されておらず、ボタンが無効な状態になっています