- 01
- 02
- 03
- 04
- 05
- 06
- 07
- 08
- 09
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
<?endif?></ul><?endif;?><?endif;?><ul id="gnb-section-help" class="gnb-menu"><?if(isset($group['HelpGroup'])):?>
<?for($i=0;$i<count($group['HelpGroup']);$i++):?>
<?$groupItem = $group['HelpGroup'][$i]?>
<?if(!$groupItem->IsItemList):?>
<li><a target="_blank" href="<?=$groupItem->Href?>"><?=$groupItem->Content?></a></li>
<?else:?>
<li class="gnb-dropdown">
<a href="#" class="btn gnb-dropdown-toggle-link">
<?if(isset($groupItem->Content) && $groupItem->Content != ""):?><span class="gnb-dropdown-toggle-text"><?=$groupItem->Content?></span><?endif?></a><a href="#" class="btn gnb-dropdown-toggle"><i>▾</i></a>
<ul class="gnb-dropdown-menu">
<?if(isset($groupItem->ItemList)):?>
<?for($i=0;$i<count($groupItem->ItemList->Item);$i++):?>
<?$subItem = $groupItem->ItemList->Item[$i]?>
<li><a target="_blank" href="<?=$subItem->Href?>"><?=$subItem->Content?></a></li>
<?endfor?>
<?endif?>
</ul>
</li>
<?endif?>
<?endfor?>
<?endif?>
</ul>
Встретил в одном из проектов.
Долго думал к какому языку отнести это дело, решил, что всё же PHP.
Не пишите так никогда, это как минимум, нечитаемо.
Qwertiy 11.07.2014 09:52 # 0
kegdan 11.07.2014 10:09 # +1
Fike 11.07.2014 11:13 # +1
<?endif?>
</ul>
</li>
<?endif?>
<?endfor?>
<?endif?>
Qwertiy 11.07.2014 20:34 # 0
Имелась в виду возможность использовать фигурные скобки?
inkanus-gray 11.07.2014 21:16 # +1
<?endif;
endfor;
endif?>
Во-вторых, да, можно было использовать фигурные скобки вместо всех этих endXXX. Но это всё мелочи. Самое главное, что здесь слишком часто переключаются режимы PHP/HTML.
Все эти циклы и ветвления можно было вынести в отдельную функцию, которую принято называть вьюхелпером или декоратором.
Можно и не всё выносить, а частично:
Fike 11.07.2014 23:17 # +3