2011-10-01 8 views
0

나는 현재 날짜를 찾고 PHP 배열에서 검색을 수행하고 오늘처럼 하루에 무슨 일이 일어나는지 보여주는 프로그램을 만들었습니다. 유일한 문제는 프로그램이 10-12 개월을 올바르게 읽을 수 없다는 것입니다.오늘의 Like Today 프로그램

PHP는 배열 :

$anniversary = array(
    '1/01' => array (
     '1813' => 'something here', 
     '1824' => 'something here', 
     '2001' => 'something here' 
    ), 
    '31/12' => array(
     '-450' => 'something here', 
     '-168' => 'something here', 
     '1942' => 'something here' 
    ) 
); 

그리고 프로그램입니다 : 여기 내 코드입니다

<?php 
include 'array.php'; 
$today = date('d/m'); 

foreach ($anniversary[$today] as $hdate => $event) { 
    $table[0][] = $hdate; 
    $table[0][] = $event; 
    $counter++; 
} 

do { 
    $random = rand(0, $counter * 3); 
} while($random % 2 == 0); 

echo '<h2>'.$table[0][$random-1].": ".'</h2>'. 
    '<p>'.$table[0][$random].'</p>'; 
?> 

문제는 달 01-09이 달 10 알게 제대로 보여주고 있다는 것입니다 - 12 월을 혼동하기 때문에 찾을 수 없습니다. 모든 솔루션?

+2

'd'는 "선행 0을 가진 일"- 당신은'대신''01/01''의 1/01''를 사용하는 이유? – Griwes

+0

또한 달 및 날짜 분리를 위해 다른 배열 수준을 사용하는 것이 어떻습니까? 그래서'$ 기념일 [월] [일] [년] 또는 무엇인가? – poke

+0

들여 쓰기가 수정되었습니다. –

답변

0

'혼란스럽지 만'아무것도 아닙니다. :)

실제로 문제는 몇 달이나 며칠이 아닙니다. 배열의 날짜 형식은 j/m (날짜의 앞에 0이없고 월에 앞에 0이 없음)이지만 d/m (날짜가 0으로 시작하고 월에 앞에 0이 없음)을 사용하여 조회합니다.

When I fix your date format, the program works well.

+0

답변 해 주셔서 감사합니다. –

관련 문제