.NET から PHP に切り替えてから 4 年が経ち、最近、高性能を追求し始めました~~
それで、ブログを書く時期が来たと思い始めました~
まずは何かを見つけてみましょう~
コードをコピーしてください コードは次のとおりです:
$arr = array(
'attr1' => 1 ,
'attr2' => 1 ,
'attr3' => 1 ,
); ( true );
for( $i = 0 ; $i {
if( isset( $arr['attr1'] ) )
{
}
if( isset( $arr[' attr2'] ) )
{
}
if( isset( $arr['attr3'] ) )
{
}
}
$endTime = microtime( true );
printf( "%d us.n" , ( $endTime - $startTime ) * 1000000 ) ;
$startTime = microtime( true );
for( $i = 0 ; $i {
foreach( $arr as $key => $値)
{
switch( $key )
{
case 'attr1':
break;
case 'attr3':
}
}
}
$endTime = ( true );
printf( "% d us.n" , ( $endTime - $startTime ) * 1000000 );
ただし、どうやっても
us です。見てみると、最初の段落は 2 番目の段落よりも複雑で、構造は 2 番目の段落ほど明確ではありません
では、なぜ最初の段落は 2 番目の段落よりもはるかに高速に実行されるのでしょうか?コードの最初の段落には if が 3 つしかありません
{ case 'attr1': break; case ' attr3':
foreach( $arr as $key => $value )
{
if( $key = = 'attr1' )
{
}
else if( $key == 'attr2' )
{
}
else if( $key == 'attr3' )
{
}
}
なので、実行効率は2倍近くになります。 以上、PHP の高パフォーマンスな書き込みについて、その側面も含めて紹介しましたが、PHP チュートリアルに興味のある友人の参考になれば幸いです。