我正在使用php脚本,使用输出缓冲将文件输出到客户端。
由于脚本的工作方式,我必须使用输出缓冲。没有OB,很容易测试开始和结束时间之间的回声并显示时间差异,但是当使用OB时,时间接近于零,因为回声输出被放在缓冲区本地,缓冲区被发送到没有php脚本的第二个momemt中的网络已经知道了这个过程。
有没有办法在OB打开的同一个脚本中测试网络速度?
header('X-Accel-Buffering: yes');
$start_time = microtime(true);
echo $data; // near zero time
ob_flush();
flush(); // test this speed ??
$end_time = microtime(true);
$speed = strlen($data) / ($end_time - $start_time);