PHP优化/一般

时间:2014-05-09 13:18:16

标签: php optimization

问题可能是愚蠢的,但对我来说理解如何以正确的方式做到这一点非常重要。

假设我们有以下脚本

<?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值调用我们想要的那个但是代码太多了,当然如果我们有巨大的代码,这是不好的。

谢谢你希望你了解我

1 个答案:

答案 0 :(得分:1)

保持原样。

What exactly is code branching

所有现代处理器都使用代码分支,如果if语句存在与否,它会使您的情况无关紧要

代码分支使硬件在if语句为true或false时进行猜测。如果猜对了,就会有速度提升,如果猜错了,就会减速。在你的情况下,它会100%正确地猜测