http://phpcoder.ws/2009-02/36-...rye-php-skripty.htmlА тут уже говориться что свич быстрее
switch() работает быстрее чем конструкции вида
if(...) {...} elseif (...) {...} elseif (...) ...-----------------------------
В итоге можно предположить, что работают они одинаково, а все попытки измерить - погрешности. Но! При проходе по elseif пых когда находит конструкцию удовлетворяющую условию остальную часть он опускает. Свич держится до конца, и поэтому за счет того не просмотренного кода elseif выигрывает.
Вывод:
вот такого делать уже не надо
if($id = 1){include("blocks/info.php"); exit();}
elseif($id = 2){include("blocks/resyrs.php"); exit();}
elseif($id = 3){include("blocks/nayka.php"); exit();}
elseif($id = 4){include("blocks/teachers.php"); exit();}
elseif($id = 5){include("blocks/ycheba.php"); exit();}
elseif($id = 6){include("blocks/deti.php"); exit();}
elseif($id = 7){include("blocks/pobedy.php"); exit();}
elseif($id = 8){include("blocks/online.php"); exit();}
Тут естессно юзаем свич, тк, даже и если и будет выигрышь, то небольшой (Это при условии что свич не будет быстрее).
Ну а так, будет красивее юзать условия:
Открыть спойлер
Закрыть спойлер
if($act=='usadm')
{
require_once ('admin/head.php');
echo '<div class="helem"><img width="24" height="24" src="admin/theme/'.$set['admintheme'].'/preferences.png" /> '.$lang['users_adm'].'</div>';
echo '<div class="elem"><a href="?do=config&act=user"><img width="14" height="14" src="admin/theme/'.$set['admintheme'].'/members.gif" /> '.$lang['sp_users'].'</a></div>';
echo '<div class="elem"><a href="?do=config&act=newuser"><img width="14" height="14" src="admin/theme/'.$set['admintheme'].'/plus.gif" /> '.$lang['cr_user'].'</a></div>';
echo '<div class="helem"> </div>';
echo '<a class="url" href="?do=adm">'.$lang['adminpanel'].'</a><br />';
require_once ('admin/fin.php');
}
elseif($act=='base')
{
require_once ('admin/head.php');
echo '<div class="helem"><img width="24" height="24" src="admin/theme/'.$set['admintheme'].'/preferences.png" /> '.$lang['baze_set'].'</div>';
echo '<form action="?do=config&act=sbase" method="post">';
echo '<div class="elem"><b>'.$lang['site_url'].'</b><br />';
echo '<input type="text" size="20" name="site" class="edit2" value="'.$set['site'].'"></div>';
echo '<div class="elem"><b>'.$lang['full_url'].'</b> '.$lang['full_notice'].'<br />';
echo '<input type="text" size="20" name="url" class="edit2" value="'.$set['url'].'"></div>';
echo '<div class="elem"><b>'.$lang['header'].'</b><br />';
echo '<input type="text" size="20" name="head" class="edit2" value="'.$set['head'].'"></div>';
echo '<div class="elem"><b>'.$lang['theme'].'</b><br />';
echo '<select name="theme">';
$dir = opendir ('themes');
while ($file = readdir($dir))
{
if (( $file != ".") && ($file != ".."))
{
echo '<option value='.$file.' >'.$file.'</option>';
}
}
closedir ($dir);
echo '</select></div>';
echo '<div class="elem"><b>'.$lang['adm_theme'].'</b><br />';
echo '<select name="admintheme">';
$dir = opendir ('admin/theme');
while ( $file = readdir ($dir))
{
if (( $file != ".") && ($file != ".."))
{
echo '<option value='.$file.' >'.$file.'</option>';
}
}
closedir ($dir);
echo '</select></div>';
echo '<div class="elem"><b>'.$lang['elem_saerch'].'</b><br />';
echo '<input type="text" size="20" name="search_on_page" class="edit2" value="'.$set['search_on_page'].'"></div>';
echo '<div class="elem"><b>'.$lang['elem_history'].'</b><br />';
echo '<input type="text" size="20" name="history_on_page" class="edit2" value="'.$set['history_on_page'].'"></div>';
echo '<div class="elem"><b>'.$lang['elem_dissc'].'</b><br />';
echo '<input type="text" size="20" name="disscusion_on_page" class="edit2" value="'.$set['disscusion_on_page'].'"></div>';
echo '<div class="elem"><b>'.$lang['elem_wiki'].'</b><br />';
echo '<input type="text" size="20" name="symbols" class="edit2" value="'.$set['symbols'].'"></div>';
echo '<div class="elem"><b>'.$lang['reg_g'].'</b><br />';
echo '<input type="radio" name="reg" '.ch($set['reg'],'noreg').' value="noreg"> '.$lang['reg_off'].'<br />';
echo '<input type="radio" name="reg" '.ch($set['reg'],'regon').' value="regon"> '.$lang['allow_to_all'].'<br />';
echo '</div>';
echo '<div class="elem"><input type="submit" value="'.$lang['save'].'" class="edit"></div>';
echo '</form>';
echo '<div class="helem"> </div>';
echo '<a class="url" href="?do=adm">'.$lang['adminpanel'].'</a><br />';
require_once ('admin/fin.php');
}
Ибо, если все таки $act=='usadm', то остальной кусок кода интерпретатор опустит. И будет большая прибавка к скорости выполнения. Тем более в большом обьеме текста будет легче найти границы по скобке (Если в редакторе есть такая фишка)