PHPで一括出力ではなく、ひとつずつ順次に出力する方法
2024/04/17
PHPで重たい処理とかをしている際に、途中報告みたいな形で順次出力させる方法のメモ。
ソースコード
<?php function testA($x, $testArray){ for($i = 1; $i < 10000000; $i++){ } ob_flush(); flush(); echo $x . "<br />"; //順次表示される $testArray[$x] = rand(10000, 99999); return $testArray; } $testArray = array(); for($x = 1; $x < 10; $x++){ $testArray = testA($x, $testArray); } var_dump($testArray); //これが表示されるのは一番最後 ?>
本来出力用バッファにためるものを、ob_flashとflashで強制的に出力させる形。
リファレンス
ob_flash
https://www.php.net/manual/ja/function.ob-flush.php
flash
関連記事
-
-
PHPでCookie保存時にPartitioned属性を設定する方法
あるページをブラウザの開発者ツールで見た際に「cookie partitione ...
-
-
ブラウザ上でファイルのアップ・ダウンロードが可能なTiny File Managerの利用方法
ブラウザ上でファイルのアップ・ダウンロードが可能なファイルマネージャーを設置した ...
-
-
PHPでExcelシートを出力する方法(PhpSpreadsheet)
PHPでエクセルシートを出力させたい。以前はPHPExcelを利用していたが現在 ...
-
-
【2024年版】PHPMailerでGmailのSMTPサーバを経由してメールを送信する方法
だいぶ前に同じようなことをメモしたが、そちらの方法だと送信できずエラー内容を見た ...
-
-
PHPでフォーム送信の際に禁止ワードのチェック及び制限をかける方法
掲示板等のformを送信する際に特定の禁止ワードが含まれていないかチェックするプ ...