2차메뉴 배열문의 php4
본문
$menu_list = array(
array( 'num' => 1000, 'text' => '포털', 'url' => '#', 'target' => '_self' ),
array( 'num' => 1001, 'text' => '다음', 'url' => '#', 'target' => '_self' ),
array( 'num' => 1002, 'text' => '네이버', 'url' => '#', 'target' => '_self' ),
array( 'num' => 1003, 'text' => '구글', 'url' => '#', 'target' => '_self' ),
array( 'num' => 2000, 'text' => '포털', 'url' => '#',
);
<ul class="clearfix m-0 me-ul nav-slide">
<li class="float-left p-0 me-li">
<a class="d-block bg-primary" href="#" target="_self">
<span class="me-a text-nowrap f-md en px-4">
<i class="fa empty" aria-hidden="true"></i> 포털 </span>
</a>
<div class="clearfix sub-slide sub-1div">
<ul class="sub-1dul me-sw float-left">
<li class="sub-1dli">
<a href="http://www.naver.com" class="me-sh sub-1da" target="_blank">
<i class="fa empty fa-fw" aria-hidden="true"></i> 네이버</a>
</li>
<li class="sub-1dli">
<a href="http://daum.net/" class="me-sh sub-1da" target="_blank">
<i class="fa empty fa-fw" aria-hidden="true"></i> 다음</a>
</li>
<li class="sub-1dli">
<a href="#" class="me-sh sub-1da" target="_self">
<i class="fa empty fa-fw" aria-hidden="true"></i> 구글</a>
</li>
</ul>
<div class="clearfix" style="width:250px;"></div>
</div>
</li>
</ul>
답변 5
설명이 빠졌네요?? php4 맞나요?? php7, 8 이 나온시점인데 4를 아직도 쓰세요? ㄷㄷ
뭘 어쩌란건지...
php7.X 이상 환경으로 업그레이드 하세요.
속도도 보안도 훨씬 좋아집니다.
근데, 질문이 뭔가요?
-- 하다가 막 했는데...
<?php
for($i = 0; $i < count($menu_list); $i++) {
if (right($menu_list[$i]['num'], 2) == 00) { $last_key = $menu_list[$i]['num'];
?>
<li class="float-left p-0 me-li">
<a class="d-block bg-primary" href="#" target="_self">
<span class="me-a text-nowrap f-md en px-4">
<i class="fa empty" aria-hidden="true"></i><?php echo $menu_list[$i]['text']?></span>
</a>
<?php
$nt_submenu = false;
for($j = $i; $j < 99; $j++) {
if (isset($menu_list[$j]['num']) == false) { echo "없ㄱ는데?";
?>
</li>
<?php
break;
} else {
if ($nt_submenu == false) { ?>
<div class="clearfix sub-slide sub-1div">
<ul class="sub-1dul me-sw float-left">
<?php $nt_submenu = true; }
}
if ( ($menu_list[$j]['num'] > $last_key) && ($menu_list[$j]['num'] < $last_key + 1000)) { ?>
<li class="sub-1dli">
<a href="http://zcar.crypt2hex.duckdns.org/content/insa11" class="me-sh sub-1da" target="_self">
<i class="fa empty fa-fw" aria-hidden="true"></i><?php echo $menu_list[$j]['text']?></a>
</li>
<?php
} else { $j = 100; ?>
</ul>
<div class="clearfix" style="width:250px;"></div>
</div>
<?php
}// 서브메뉴 if 문 종료
} // sub 메뉴 for 종료
} // if 문 종료
} if ($i == count($menu_list)) { ?>
</ul>
</div><?php } ?>
배열을
<ul class="clearfix m-0 me-ul nav-slide">
<li class="float-left p-0 me-li">
<a class="d-block bg-primary" href="#" target="_self">
<span class="me-a text-nowrap f-md en px-4">
<i class="fa empty" aria-hidden="true"></i> 포털 </span>
</a>
<div class="clearfix sub-slide sub-1div">
<ul class="sub-1dul me-sw float-left">
<li class="sub-1dli">
<a href="http://www.naver.com" class="me-sh sub-1da" target="_blank">
<i class="fa empty fa-fw" aria-hidden="true"></i> 네이버</a>
</li>
<li class="sub-1dli">
<a href="http://daum.net/" class="me-sh sub-1da" target="_blank">
<i class="fa empty fa-fw" aria-hidden="true"></i> 다음</a>
</li>
<li class="sub-1dli">
<a href="#" class="me-sh sub-1da" target="_self">
<i class="fa empty fa-fw" aria-hidden="true"></i> 구글</a>
</li>
</ul>
<div class="clearfix" style="width:250px;"></div>
</div>
</li>
</ul>
형태로 만들고싶습니다.ㅠ
---웹서버 환경이 php4/ mysql4 라서.. 제로보드4라 업그레이드를 못하는 현실입니다.ㅠㅠ
!-->!-->$menu_list = array(
array( 'num' => 1000, 'text' => '포털', ),
array( 'num' => 1001, 'text' => '다음', ),
array( 'num' => 1002, 'text' => '네이버', ),
array( 'num' => 1003, 'text' => '구글', ),
array( 'num' => 2000, 'text' => '포털',
);
num이 오름차순으로 sorting되었다고 가정하고
$pre='';
foreach( $menu_list as $val) {
$m1=substr( $val, 0,2);
$m2=substr( $val, 2,2);
echo '<ul class="clearfix m-0 me-ul nav-slide">';
if( $pre!=$m1) { // 새 1차 메뉴 시작
if( $pre) echo '</ul>
<div class="clearfix" style="width:250px;"></div>
</div></li>';
echo '<li class="float-left p-0 me-li">';
}
if( $m2=='00') echo
'<a class="d-block bg-primary" href="#" target="_self">
<span class="me-a text-nowrap f-md en px-4">
<i class="fa empty" aria-hidden="true"></i> 포털 </span>
</a>
<div class="clearfix sub-slide sub-1div">
<ul class="sub-1dul me-sw float-left">';
else echo '<li class="sub-1dli">
<a href="#" class="me-sh sub-1da" target="_self">
<i class="fa empty fa-fw" aria-hidden="true"></i> 구글</a>
</li>';
else echo '<li class="sub-1dli">
<a href="#" class="me-sh sub-1da" target="_self">
<i class="fa empty fa-fw" aria-hidden="true"></i> 구글</a>
</li>';
} // foreach();
테스트는 안 해 봤지만
1차 배열로 2차 메뉴를 만들려면 이런 식으로 하면 될 겁니다.