Forum Webscript.Ru
Программирование => PHP => Тема начата: Puma от 22 Февраля 2006, 15:45:25
-
Может вопрос немного не по теме, но я не знаю в какой его раздел задать! Я ни где программированию не учился и спросить больше некого!
Как лучше и правильнее писать:
if(!$string) $string=\'значение1\';
if ($string == \'значение1\') выражение1;
else if ($string == \'значение2\') выражение2;
или лучше:
if ((!$string) || ($string == \'значение1\')) выражение1;
else if ($string == \'значение2\') выражение2;
Заранее спасибо!
-
а пофигу
-
Puma
Как хочешь.
Первый вариант потом (спустя год-два-три) при рефакторинге воспринимается лучше, имхо.
-
Puma
Вообще разницы нет, но второй вариант короче и в нем выполняется меньше действий, соответственно он выполняется быстрей и места занимает меньше.
-
CGVictor
Мне кажется что при рефакторинге как раз второй вариант воспринимается легче, потому что эта строчка
if(!$string) $string=\'значение1\';
может стоять, например, совсем не в том месте, где происходит проверка!
-
Scroller Puma
Да пишите как хотите.
Вам рефакторить, не мне.
RomikChef
Ром, мож прибить эту тему? Ерунда же на п.масле...
-
CGVictor
Я думал, что на этом форуме люди помогают друг-другу, а не говорят
Да пишите как хотите.
Это уже не помощь...
-
Scroller
а что писать если действительно пофигу :) ?
Scroller:
Вообще разницы нет, но второй вариант короче и в нем выполняется меньше действий, соответственно он выполняется быстрей
что значит быстрее ? :) или на сколько если действительно быстрее ?
Scroller:
и места занимает меньше.
где на сервере что ли ? опять тот же вопрос.
если уж так хочется можно вообще альтернативные конструкторы использывать или тот же switch. А на вопрос что лучше ответили в полне доходчиво.
-
for_i_0
Scroller:
что значит быстрее ? или на сколько если действительно быстрее ?
Ну, выполняться программа будет быстрее. В таком коротком примере разница будет незаметна, но при огромных скриптах на тысячи строк разница будет ощутима.
Scroller:
где на сервере что ли ? опять тот же вопрос.
Файл будет занимать менше места, т.к. сам скрипт короче.
-
Scroller
Вот сделай тест и опубликуй результат.
Только я не уверен, что будет сколь нибудь ощутимая разница даже при 100К прогонах.
-
CGVictor
Ну я ж говорю, на таком маленьком примере ничего заметно не будет, но когда у нас огромные скрипты на тысячи строк, которые делают выборку из БД ( где около полумилиона записей), после чего нужно эти данные сложным образом обработать и записать изменения обратно в БД, вывести в браузер или еще что-нить... при чем все это надо делать по нескольку раз в час... вот тогда разница становится заметна.
-
Scroller
[m] Тем, кто принципиальный:
результаты теста для миллиона (1000000) прогонов:
Var1: 2.43273901939 sec
var2: 4.01181697845 sec
В нормальном скрипте не будет и сотой доли.
Обсуждать больше нечего.
[off]А Ромик был прав... нечего тут больше делать.[/off]