Помощник
|
Как создать функцию |
scva
|
Сообщение
#1
|
||
|
|
||
|
|||
Letmetouchyou |
12.10.2010, 22:53;
Ответить: Letmetouchyou
Сообщение
#2
|
|
[PHP]function commentsCount($number){
if ($number == 0) {$total = "Нет комментариев";} if ($number == 1) {$total = "Один комментарий";} if ($number > 1 and $number < 4) {$total = ''.$number.' комментария';} if ($number >= 5) {$total = ''.$number.' комментариев';} return $total; } echo commentsCount(mysql_num_rows($arr));[/PHP] |
|
|
scva
|
Сообщение
#3
|
|
1. Все равно не понимаю, мы определяем переменную total, для чего она нужна, ведь мы ее не выводим. Можно ли без нее?
2. Зачем второй раз mysql_num_rows echo commentsCount(mysql_num_rows($arr)); Нельзя ли просто echo commentsCount; а вот это выражение упростить можно [php]$number > 1 and $number < 4[/php]что то мне кажется, что можно проще |
|
|
Flok |
12.10.2010, 23:41;
Ответить: Flok
Сообщение
#4
|
|
разбираю по порядку:
function commentsCount($number) создаём функцию commentsCount, которая будет возвращать какой-то результат после своей работы. переменная $number - это переменная строго этой функции. И при этом функция каждый раз при её вызове будет ожидать, что мы передадим ей какую-то переменную, которая и будет считаться этой переменной $number. echo commentsCount($arr); в данном случае мы показываем результат работы функции, когда передаём ей переменную $arr. Теперь, во время её работы, вместо переменной $number будет подставляться значение переменной $arr ну, и как я сказал, функция должна возвращать результат своей работы. поэтому в конце функции дописываем return $total, где в $total и содержится то, что должна вернуть ф-я ) надеюсь, понятно схему объяснил. |
|
|
scva
|
Сообщение
#5
|
|
Вроде понял.
И еще такой вопрос. Объясните вообщих чертах, в каких случаях стоит создавать функции. Просто в общих чертах |
|
|
MaxAst |
13.10.2010, 0:01;
Ответить: MaxAst
Сообщение
#6
|
|
Если определенный кусок кода планируется применяться многократно, намного проще вызвать функцию нежели дублировать заново код. Пример
|
|
|
Arks |
13.10.2010, 7:38;
Ответить: Arks
Сообщение
#7
|
|
Если определенный кусок кода планируется применяться многократно не слушайте, это баян. На самом деле гораздо чаще встречается другая ситуация: во всех случаях когда кол-во кода больше 100 строчек чтобы не запутаться имеет смысл разделить структуру на классы и их методы исходя из логики работы скрипта. |
|
|
Flok |
13.10.2010, 8:59;
Ответить: Flok
Сообщение
#8
|
|
|
Arks,это не баян, а одна из причин создания функций.
p.s.: а ещё, суровые псковские кодеры пишут сайты без ооп. ну это так, к слову ))
|
|
|
||
|
Похожие темы
Тема | Ответов | Автор | Просмотров | Последний ответ | |
---|---|---|---|---|---|
Большие ставки для кликов в Я.Директ. Как удешевить? | 2 | rownong27 | 1124 | 26.3.2024, 14:13 автор: knezevolk |
|
Как вы бросили работу и перешли на заработок с сайтов? | 12 | uahomka | 2298 | 25.3.2024, 6:52 автор: Skyworker |
|
Как отозвать банковский платеж фрилансеру? | 28 | metvekot | 3922 | 25.3.2024, 6:34 автор: Skyworker |
|
Как вывести деньги в Украине с заблокированного Юмани ? | 23 | freeax | 3650 | 24.3.2024, 20:55 автор: Liudmila |
|
Создать видеоканал лучше в ютуб или телеграм? | 10 | uahomka | 1799 | 24.3.2024, 4:21 автор: Alexand3r |
Текстовая версия | Сейчас: 29.3.2024, 16:44 |