여분필드 추가 후 정렬하기 채택완료
꽁치입니다
9년 전
조회 3,686
</p><p><?
$current_time = time(); </p><p>$wr_1 = strtotime($list[$i][wr_1]) + ($list[$i][wr_2] * 3600); // 시작날짜 + 시작시간 계산
$wr_3 = strtotime($list[$i][wr_3]) + ($list[$i][wr_4] * 3600); // 마감날짜 + 마감시간 계산
$wr_1_text = date("Y년 m월 d일", $wr_1);
$wr_3_text = date("Y년 m월 d일", $wr_3);
// 프로젝트신청인원 체크
$sql_event_total = " select count(*) as cnt_total from g5_event_request where bo_table = '$bo_table' and wr_id = '$wr_id' ";
$row_event_total = sql_fetch($sql_event_total);</p><p>// 프로젝트 진행상태 아이콘
if($wr_1 < $current_time && $wr_3 > $current_time){
if($view[wr_5] == 0 ){ // 프로젝트 진행중
$ico_state_img = '<span class="tack-icon bg-orangered">진행중</span>';
}else if( $row_event_total[cnt_total] >= $view[wr_5] ){ // 프로젝트 신청인원 마감
$ico_state_img = '<span class="tack-icon bg-gray">마 감</span>';
}else{
$ico_state_img = '<span class="tack-icon bg-orangered">진행중</span>'; // 프로젝트 진행중
}
}else if($wr_3 < $current_time){
$ico_state_img = '<span class="tack-icon bg-gray">마 감</span>'; // 프로젝트 마감
}else if($wr_1 > $current_time){
$ico_state_img = '<span class="tack-icon bg-blue">시작전</span>'; // 프로젝트 시작전
}
?></p><p>
위 와같은 함수를 써서 진행상황을 표현 하는데,
list 에서 정렬을 시킬때 보통은 DB 필드를 호출 함으로 정렬을 시키는데,
혹시, 다른 방법으로 정렬이 가능 할까요?
진행중/마감/시작전 이런 식의 정렬은 힘들까요?
댓글을 작성하려면 로그인이 필요합니다.
답변 1개
채택된 답변
+20 포인트
9년 전
order by 문 없이 그누에서 리턴에준 배열의 특정 필드값으로의 정렬을 말씀이신가요?
여러가지 방법이 있습니다만..
for문으로 한번 돌려서 $list 를 재 배열 시키는것과
php 기본 함수인 array_multisort 함수로 $list 를 재 배열 시키는것입니다.
http://php.net/manual/en/function.array-multisort.php">http://php.net/manual/en/function.array-multisort.php
order by 가 사용 가능하시다면..
order by 에도 조건이 가능하니 더할나위 없이 좋구요.
로그인 후 평가할 수 있습니다
댓글을 작성하려면 로그인이 필요합니다.
답변을 작성하려면 로그인이 필요합니다.
로그인