2012-02-14 2 views
3

아래 코드 ...PHP, 날짜() 올바른 날짜를 반환하지/시간

$date = "02-13-2012"; 
$start_time = "17:30"; 
$end_time = "20:00"; 

$start_timestamp = date("m-d-Y H:i",strtotime($date." ".$start_time)); 
$end_timestamp = date("m-d-Y H:i",strtotime($date." ".$end_time)); 

print($start_timestamp); 
print($end_timestamp); 

반환 ...

1969년 12월 31일 19시 30분 0초

1969-12-31 20:30:00

왜 제대로 작동하지 않는 사람이 있습니까?

+1

try this $ date = "2012-02-13"; – busypeoples

+0

좋은 질문 :). 나는 과거에 한번 우연히 만났습니다. –

답변

0

날짜 형식을 변경해야한다고 생각합니다.

$date = "02-13-2012"; 
$date = str_replace("-","/",$date); 
$start_time = "17:30"; 
$end_time = "20:00"; 

$start_timestamp = date("m-d-Y H:i",strtotime($date." ".$start_time)); 
$end_timestamp = date("m-d-Y H:i",strtotime($date." ".$end_time)); 

print($start_timestamp); 
echo "<br/>"; 
print($end_timestamp); 
+0

이 작업은'-'를'/'로 대체하는 것뿐이었습니다. 조언 해주셔서 감사합니다. –

2

02-13-2012 17:30recognized date format이 아닙니다. 일 - 월 - 년 또는 년 - 월 - 일 순서를 사용하거나 사용자 정의 구문 (예 : DateTime::createFromFormat)을 사용하여 사용자 정의 구문을 분석하십시오. 당신이 xx-yy-zzz 같은 날짜를 포맷 할 경우

0

날짜 형식은 strtotime()는로 해석, strtotime으로 기능

중 변화가

$date = "13-02-2012"; 

또는 다른 유효한 형식

0

에 대한 정확하지 않습니다 미국 형식이 아닌 표준 형식의 날짜이므로 dd-mm-yyyy입니다.

+2

"normal"은 상대적 용어입니다. – stillstanding

+0

@still month-day-year is * normal이 아닙니다. ;-P – deceze

+0

PHP strtotime 파서와 관련된 정상적인 것은 아닙니다. : P – entropid

관련 문제