베이직 테마 head.php 파일 안의 메뉴 소스인데....
본문
<li class="gnb_1dli" style="z-index:<?php echo $gnb_zindex--; ?>">
<a href="<?php echo $row['me_link']; ?>" target="_<?php echo $row['me_target']; ?>" class="gnb_1da"><?php echo $row['me_name'] ?></a>
<?php
$k = 0;
foreach( (array) $row['sub'] as $row2 ){
if( empty($row2) ) continue;
if($k == 0)
echo '<span class="bg">하위분류</span><ul class="gnb_2dul">'.PHP_EOL;
?>
<li class="gnb_2dli"><a href="<?php echo $row2['me_link']; ?>" target="_<?php echo $row2['me_target']; ?>" class="gnb_2da"><?php echo $row2['me_name'] ?></a></li>
<?php
$k++;
} //end foreach $row2
if($k > 0)
echo '</ul>'.PHP_EOL;
?>
</li>
왜 위에서는 ul 여는 태그를 k == 0부터 출력시키면서,
아래 닫는 태그는 0보다 클 때부터 출력시키는 건가요?
답변 1
중간에보시면
<?php
$k++;
} //end foreach $row2
if($k > 0)
echo '</ul>'.PHP_EOL;
?>
라고 되어있는부분은
$k++ 하는 순간
$k 값은 이미 1이상으로 증가됩니다.
따라서 ul을 닫기위해서 0으로 하면 실행되지 않아서
안닫히겠죠
참고로 저 </ul>은
<li>안의
foreach 에서 열려진 <ul>에 대한 닫힘입니다.