假设我们有以下脚本
<?php
//set count_bytes
$count_bytes = true;
//set count_bytes
$bytes = 0;
$url = "http://127.0.0.1:" . 8000;
$file_handler = @fopen( $url, "rb" ) or die( "Not Working" );
foreach ( $http_response_header as $h )
{
header( $h );
}
while ( ! feof( $file_handler ) )
{
$response = stream_get_line( $file_handler, 4096 );
if($count_bytes === true)
{
$bytes += strlen( $response );
}
echo $response;
}
fclose($file_handler);
?>
如你所见,我正在使用变量$ count_bytes,这是bool。在while循环中,您可以看到每次都检查if语句。有没有办法优化这个,所以检查只会进行一次?
我想一个解决方案是使while循环2次并根据$ count_bytes的bool值调用我们想要的那个但是代码太多了,当然如果我们有巨大的代码,这是不好的。
谢谢你希望你了解我
答案 0 :(得分:1)
保持原样。
What exactly is code branching
所有现代处理器都使用代码分支,如果if语句存在与否,它会使您的情况无关紧要
代码分支使硬件在if语句为true或false时进行猜测。如果猜对了,就会有速度提升,如果猜错了,就会减速。在你的情况下,它会100%正确地猜测