
条件分岐に if switchがありますが、
ifパターン
==============================
if ( $a = 1)
{
処理A
}
elseif ($a = 2)
{
処理B
}
==============================
switchパターン
==============================
switch($a){
case '1':
処理A
break;
case '2':
処理B
break;
}
==============================
実際はもっと複雑ですが、どちらのほうが実行速度が速いのでしょうか。
No.1ベストアンサー
- 回答日時:
プログラムや、挙動や仕様については分かりませんが、実際やってみました。
処理内容を個別に10000回ループさせて、時間を計るだけですが。
こういう細かい事にこだわっているHPもありますので、探してみてはどうですか?
似たような処理、forとwhileでどっちが早いかとか、から始まって、アルゴリズム研究まで。
乱数使って、乱数によりけりで値を変えてますが、10000回もすれば偏りも減るでしょう。
$start = microtime();
for($i=0;$i<10000;$i++){
$ransuu = rand(0,9);
//3パターン
//ifだけの場合
//if-elseifを使う場合
//switch-caseを使う場合
}
//差を計算
$end = microtime();
$sa = $end - $start;
$sa = $sa*10000;
printf("%05d",$sa);
結果は、
3位 if文だけ。
2位 switch-case
1位 if-elseif-else
私は、if-elseifだと見にくくなるので、冒頭ではswitch-caseを使う事にしてます。なんかかっこいいし。(w
1位は3位の処理時間で、2倍違うけど、2.8GのCPUで150マイクロ秒しか違わない。
マイクロ秒=100万分の1秒らしい。
No.2
- 回答日時:
これ以外にもwhile文とdo~while文なんかもありますけど、過去にいろいろ試したことがあるのですが、PHPのバージョンや環境(OSやらZend Optimizerやら)によって全然違ってきてしまいます。
なので、速度は気にせず見やすい書き方をした方がよいと思います。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
PHPのif文でその処理を途中で抜...
-
phpの処理中に画面表示ををする...
-
SendMailがエラーを返さない
-
CSV出力にHTMLが入ってしまう
-
.phpファイルが、表示されない
-
PHPからメールを送る@さくらイ...
-
centos6のlogにscript not foun...
-
ob_end_clean と ob_clean の違...
-
php.ini を設定を変更すると再...
-
CFileDialogの最初のディレクト...
-
IIS+PHP スクリプトから仮想デ...
-
glide3x.dllがないと表示されま...
-
PHP PDOライブラリが読み込まれ...
-
include先でのinclude元の変数...
-
try~catch構文は、どういうメ...
-
FTPコマンドでディレクトリごと...
-
Notice: Undefined offset: 1を...
-
PHPでメールを受信するには?
-
テキストボックスにデータベー...
-
fopenでファイルが開かない場合...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
PHPのif文でその処理を途中で抜...
-
phpの処理中に画面表示ををする...
-
携帯電話用Webページの自動更新...
-
PHPが処理を途中でやめる。原因...
-
PHP内、ボタン押下と同時にリロ...
-
1つのPHPファイルに何度も同じ...
-
変数の範囲によって場合わけし...
-
phpからjavascriptの関数呼び出し
-
PHPのコード内でjavascriptを使...
-
Cronで同じ処理を複数同時に実...
-
VBAからPHPを実行(キック)したい
-
Smartyにて、文字検索
-
c言語 fopen
-
PHPで文字列の検索
-
質問させてください。
-
アドレスに[?****]と入れると、...
-
PHPでCGIの処理結果を使うには?
-
PHPの変わった閉じタグの必要性...
-
ブラウザから非同期プログラム...
-
SJISでPHP5+POSTGRESQL8
おすすめ情報