- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
if(count($colors)>1){
if($i==2){
$col = $colors[1];
}else{
$col = $colors[0];
}
}else{
$col=$colors[0];
}
Нашли или выдавили из себя код, который нельзя назвать нормальным, на который без улыбки не взглянешь? Не торопитесь его удалять или рефакторить, — запостите его на говнокод.ру, посмеёмся вместе!
+153
if(count($colors)>1){
if($i==2){
$col = $colors[1];
}else{
$col = $colors[0];
}
}else{
$col=$colors[0];
}
Вот где не надо - тьма тернарных операторов, а где их логичнее всего ожидать - вот такой огород из IF/ELSE
eandr67 13.10.2014 13:06 # +6
$col=$colors[(int)(count($colors)>1&&$i==2)];
Khvorostin 13.10.2014 13:39 # 0
tirinox 13.10.2014 15:14 # +2
eandr67 13.10.2014 15:19 # +1
tirinox 13.10.2014 15:25 # +2
1024-- 13.10.2014 16:00 # 0
https://www.nyse.com/quote/index/NYA
inkanus-gray 13.10.2014 16:43 # +3
Google closure compiler может сделать «перл» даже из ECMAScript'а, причём совершенно автоматически.
Lokich 13.10.2014 15:36 # +2
roman-kashitsyn 13.10.2014 16:50 # +2
Моя догадка - тут неявно предполагается, что цветов всегда не больше двух, причём индексируются они с единицы.
Если это действительно так, то при добавлении нового цвета всё посыпется. Поэтому правильный (с моей точки зрения) вариант:
roman-kashitsyn 13.10.2014 17:37 # 0
Vindicar 13.10.2014 16:31 # 0
Soul_re@ver 13.10.2014 17:30 # +2
bormand 13.10.2014 17:34 # +1
inkanus-gray 13.10.2014 19:49 # 0
http://govnokod.ru/16479#comment242321
tirinox 13.10.2014 18:58 # 0
roman-kashitsyn 13.10.2014 19:13 # +4
inkanus-gray 13.10.2014 23:02 # 0