2014-08-07 2 views
1

시간 슬롯 논리를 동적으로 작성하는 것이 다소 혼란 스럽습니다. 제발 저를 도와주세요. 일부 시간 슬롯 목록을 표시해야하지만 각 시간 슬롯은 2 시간입니다. 귀하의 질문은 모호한 것 같다PHP Timeslot 동적 목록 문제

00:00 02:00 
02 04 
04 06 
06 08 
08 10 
10 12 
12 14 
14 16 
16 18 
18 20 
20 22 
22 00 

코드

public function getTimeSlot(){ 

    $custom = array(); 
    $M  = 'AM'; 

    for($i=0;$i<=23;$i++): 
     $time1 = strtotime($i.':00:00'); 
     $time2 = strtotime(($i*2).':00:00'); 
     $diff = $time2 - $time1; 
     $custom[] = date('H:i:s ', $diff); 
    endfor; 

    pr($custom); 
    exit(); 
} 
+0

이 내 프로젝트의 요구 사항입니다 그리고 난 파일의 다른 장소에서 여러 시간이 코드가 필요합니다. 나는 스택 오버 플로우 @cornelb에서 왜이 쿼리를 게시했는지 정적 접근법을 선택할 수 없었다. –

+0

프로젝트의 요구 사항은 일부 제한 사항으로 인해 여기에서 정의 할 수 없다. 그것은 드롭 다운을 가지고 있기 때문에 의미가 있습니다. 이러한 유형의 값을 취합니다. 사용에는 슬롯을 선택하고 이후 요구 사항에 따라 이동해야합니다. –

+0

정말로이 점에 대해 더 많은 관심을 갖고 싶다면 코멘트를 통해 텍스트를 보내주십시오. .. 당신의 관심은 나를 위해 높게 평가됩니다 –

답변

1

아래 목록 인라인을 참조하시기 바랍니다. 이게 그거야?

00:00 02:00 
02:00 04:00 
04:00 06:00 
06:00 08:00 
08:00 10:00 
10:00 12:00 
12:00 14:00 
14:00 16:00 
16:00 18:00 
18:00 20:00 
20:00 22:00 
22:00 00:00 

난 그냥 단순한 시간을 인쇄 할 경우, 내가 좋아하는 일을 할 것입니다 :

$start = 0; $end = 22; 
$time_slot = range($start, $end, 2); 
$time_slot = array_map(function($time) use ($end){ 
    $next = ($time != $end) ? $time + 2 : 00; 
    $times = array(sprintf("%02s:00", $time), sprintf("%02s:00", $next)); 
    return $times; 
}, $time_slot); 

foreach($time_slot as $time) { 
    echo "$time[0] $time[1] <br/>"; 
} 
+0

내 질문은 약간 불분명하지만 내 프로젝트의 우려에 따라이 @ 고스트 감사해야 내 질문을 이해하고 그것을 대답 –

+0

@QueryMaster 확실한 남자가 도와 줘서 기뻐 – Ghost