요일별로 메뉴효과 문의드립니다

요일별로 메뉴효과 문의드립니다

QA

요일별로 메뉴효과 문의드립니다

본문


<?php $term = 1 + (int)date("w", G5_SERVER_TIME); ?>
 
<li class="dropdown<?php echo ($term=="2") ? ' active' : '';?>">
 <a href="<?php echo $at_href['menu'];?>">
   <span>월</span>
 </a>
</li>
<li class="dropdown<?php echo ($term=="3") ? ' active' : '';?>">
 <a href="<?php echo $at_href['menu'];?>">
   <span>화</span>
 </a>
</li>
<li class="dropdown<?php echo ($term=="4") ? ' active' : '';?>">
 <a href="<?php echo $at_href['menu'];?>">
   <span>수</span>
 </a>
</li>
<li class="dropdown<?php echo ($term=="5") ? ' active' : '';?>">
 <a href="<?php echo $at_href['menu'];?>">
   <span>목</span>
 </a>
</li>
<li class="dropdown<?php echo ($term=="6") ? ' active' : '';?>">
 <a href="<?php echo $at_href['menu'];?>">
   <span>금</span>
 </a>
</li>
<li class="dropdown<?php echo ($term=="7") ? ' active' : '';?>">
 <a href="<?php echo $at_href['menu'];?>">
   <span>토</span>
 </a>
</li>
<li class="dropdown<?php echo ($term=="1") ? ' active' : '';?>">
 <a href="<?php echo $at_href['menu'];?>">
   <span>일</span>
 </a>
</li>


현제 소스가 요일별로 나누어져 있습니다 이거를 하나로 통합해서 간단하게 하고싶습니다





이 질문에 댓글 쓰기 :

답변 1


<?php
// ------------------ 테스트를 위한 임시변수 설정 
define('G5_SERVER_TIME', time());
$at_href = ['menu' => './'];
// ------------------ 테스트를 위한 임시변수 설정

$term = 1 + (int)date("w", G5_SERVER_TIME);
$days = ['월', '화', '수', '목', '금', '토', '일'];

$out = '';
foreach ($days as $k => $v) {
    $kk     = ($k + 1) % 7 + 1; // reindex for logic
    $active = ($kk === $term) ? ' active' : '';
    $out .= '<li class="dropdown' . $active . '">';
    $out .= '<a href="' . $at_href['menu'] . '">';
    $out .= '<span>' . $days[$k] . '</span>';
    $out .= '</a>';
    $out .= '</li>' . PHP_EOL;
}

echo $out;
?>

배르만님 답변 주셔서 감사합니다..이거를 응용하면 될꺼같은데 제가 실력이 부족해서 응용을 못하고있습니다..저는 <li class=""> 이 안에 <?php echo ($term=="1") ? ' active' : '';?> 이거를 넣어서 적용하고 싶은데..어떻게 하면 될지 조금만더 알려주시면 감사하겟습니다^^;

그부분이 이미 만드셨던 처음 소스에도 있었고
제가 답변 달아드린것도 그부분 그대로 살린겁니다.

$active = ($kk === $term) ? ' active' : '';
$out .= '<li class="dropdown' . $active . '">';

제가 아무래도 질문을 잘못한거 같습니다 ㅠ

요일별로 나눴던거를 한테이블로 만들었습니다


<?php $term = 1 + (int)date("w", G5_SERVER_TIME); ?>

<li class="<?php echo ($kk=="$term") ? ' active' : '';?>">
생략
</li>
 
이렇게 하면 될까요?

답변을 작성하시기 전에 로그인 해주세요.
전체 5
QA 내용 검색

회원로그인

(주)에스아이알소프트 / 대표:홍석명 / (06211) 서울특별시 강남구 역삼동 707-34 한신인터밸리24 서관 1404호 / E-Mail: admin@sir.kr
사업자등록번호: 217-81-36347 / 통신판매업신고번호:2014-서울강남-02098호 / 개인정보보호책임자:김민섭(minsup@sir.kr)
© SIRSOFT