Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770
Форумы портала PHP.SU :: Версия для печати :: function rating
Форумы портала PHP.SU » » Вопросы новичков » function rating

Страниц (1): [1]
 

1. Sanek_OS9 - 05 Декабря, 2012 - 11:40:49 - перейти к сообщению
Здраствуйте *smille*, у меня следующий вопрос, какой вариант функции будет лутше.
Вот два варианта:
Вариант №1:
PHP:
скопировать код в буфер обмена
  1.  
  2. function rating($n1, $n2){
  3.         $rating = $n1 + $n2;
  4.         return ''.$rating.' (+'.$blogs['rat_p'].'/'.$blogs['rat_m'].')';
  5. }

Использование:
PHP:
скопировать код в буфер обмена
  1. echo rating($blogs['rat_p'], $blogs['rat_p'])

Вариант №2:
PHP:
скопировать код в буфер обмена
  1. function rating(){
  2.         global $blogs;
  3.         $rating = $blogs['rat_p'] + $blogs['rat_m'];
  4.         return ''.$rating.' (+'.$blogs['rat_p'].'/'.$blogs['rat_m'].')';
  5. }
  6.  

Использование:
PHP:
скопировать код в буфер обмена
  1. echo rating();

Результат будет одним и тем же, но какой из вариантов более производительнее будет? Или разницы как таковой нет? Если нет то вариант №2 будет удобнее.
2. OrmaJever - 05 Декабря, 2012 - 11:47:23 - перейти к сообщению
Вариант 1 лучше. globals плохая вещь, лучше всегда передавать в параметре.
3. Sanek_OS9 - 05 Декабря, 2012 - 11:48:40 - перейти к сообщению
Спасибо, но всетаки globals удобная весчь Улыбка
4. Мелкий - 05 Декабря, 2012 - 12:31:29 - перейти к сообщению
Sanek_OS9 пишет:
всетаки globals удобная весчь

Поговорим об этом через год Подмигивание Когда рухните от сложности и необходимости помнить и постоянно следить за тем, какие глобальные переменные какая функция использует. А это случится.
5. Sanek_OS9 - 05 Декабря, 2012 - 12:32:16 - перейти к сообщению
OrmaJever пишет:
Вариант 1 лучше. globals плохая вещь, лучше всегда передавать в параметре.

А можите обьяснить по подробней почему global не желательно использовать?
6. OrmaJever - 05 Декабря, 2012 - 12:43:12 - перейти к сообщению
Потому что
1) globals ищет переменую по всей глобальной области видимости что ударяет по производительности.
2) Это плохой тон програмирования, и как уже сказал Мелкий сложно следить какие переменые откуда берутся.
7. Sanek_OS9 - 05 Декабря, 2012 - 12:50:06 - перейти к сообщению
OrmaJever пишет:
Потому что
1) globals ищет переменую по всей глобальной области видимости что ударяет по производительности.
2) Это плохой тон програмирования, и как уже сказал Мелкий сложно следить какие переменые откуда берутся.

Спасибо большое Улыбка

 

Powered by ExBB FM 1.0 RC1