변환 날짜 형식 yyyy-mm-dd => dd-mm-yyyy [duplicate]
PHP변환 날짜 형식 yyyy-mm-dd => dd-mm-yyyy [duplicate]
날짜를 yyyy-mm-dd에서 dd-mm-yyyy (SQL에서는 아님)로 변환하려고합니다. 그러나 나는 날짜 함수가 타임 스탬프를 요구하는 방법을 모르며이 문자열에서 타임 스탬프를 얻을 수 없다.
이것이 어떻게 가능한지?
해결법
-
==============================
1.
strtotime () 및 date ()를 사용하십시오.
$originalDate = "2010-03-21"; $newDate = date("d-m-Y", strtotime($originalDate));
(PHP 사이트의 strtotime 및 date 문서를 참조하십시오).
편집 : 이것은 원래 질문에 대한 빠른 해결책이라는 것을 유의하십시오. 보다 광범위한 변환을 위해서는 DateTime 클래스를 사용하여 구문을 분석하고 형식을 지정해야합니다.
-
==============================
2.
strtotime 변환을 피하려면 (예 : strtotime이 입력을 구문 분석 할 수없는 경우)
$myDateTime = DateTime::createFromFormat('Y-m-d', $dateString); $newDateString = $myDateTime->format('d-m-Y');
또는 동등하게 :
$newDateString = date_format(date_create_from_format('Y-m-d', $dateString), 'd-m-Y');
먼저 $ date String이있는 형식을 지정하고 $ new Date String을 원하는 형식으로 지정합니다.
또는 소스 형식이 항상 "Y-m-d"(yyyy-mm-dd)이면 DateTime :
<?php $source = '2012-07-31'; $date = new DateTime($source); echo $date->format('d.m.Y'); // 31.07.2012 echo $date->format('d-m-Y'); // 31-07-2012 ?>
-
==============================
3.
implode('-', array_reverse(explode('-', $date)));
날짜 변환 오버 헤드 없이는 별 문제가 없을 것입니다.
-
==============================
4.
$newDate = preg_replace("/(\d+)\D+(\d+)\D+(\d+)/","$3-$2-$1",$originalDate);
이 코드는 모든 날짜 형식에 적용됩니다.
이전 날짜 형식으로 인해 $ 3- $ 1- $ 2와 같은 대체 변수의 순서를 변경할 수 있습니다.
-
==============================
5.
$timestamp = strtotime(your date variable); $new_date = date('d-m-Y', $timestamp);
이상:
여기를 클릭하십시오.
또는 더 짧은 :
$new_date = date('d-m-Y', strtotime(your date variable));
-
==============================
6.
또한 또 다른 확실하지 않은 가능성 :
$oldDate = '2010-03-20' $arr = explode('-', $oldDate); $newDate = $arr[2].'-'.$arr[1].'-'.$arr[0];
내가 그것을 사용할 지 아직 모르겠다. :)
-
==============================
7.
가장 많이 투표 된 답변은 실제로 잘못되었습니다!
PHP strtotime Manual은 "이 함수는 영어 날짜 형식을 포함하는 문자열을받을 것으로 기대합니다."라고 말합니다. 실제로 의미하는 것은 "m-d-Y"또는 "m / d / Y"와 같은 미국 미국 날짜 형식을 예상한다는 것입니다.
즉, "Y-m-d"로 제공된 날짜가 strtotime으로 잘못 해석 될 수 있습니다. 예상되는 형식으로 날짜를 제공해야합니다.
몇 가지 형식으로 날짜를 반환하는 약간의 함수를 작성했습니다. 의지대로 사용하고 수정하십시오. 누구든지 그것을 수업으로 바꾸면 공유 될 수 있다면 기쁠 것입니다.
function Date_Converter($date, $locale = "br") { # Exception if (is_null($date)) $date = date("m/d/Y H:i:s"); # Let's go ahead and get a string date in case we've been given a Unix Time Stamp if ($locale == "unix") $date = date("m/d/Y H:i:s", $date); # Separate Date from Time $date = explode(" ", $date); if ($locale == "br") { # Separate d/m/Y from Date $date[0] = explode("/", $date[0]); # Rearrange Date into m/d/Y $date[0] = $date[0][1] . "/" . $date[0][0] . "/" . $date[0][2]; } # Return date in all formats # US $Return["datetime"]["us"] = implode(" ", $date); $Return["date"]["us"] = $date[0]; # Universal $Return["time"] = $date[1]; $Return["unix_datetime"] = strtotime($Return["datetime"]["us"]); $Return["unix_date"] = strtotime($Return["date"]["us"]); $Return["getdate"] = getdate($Return["unix_datetime"]); # BR $Return["datetime"]["br"] = date("d/m/Y H:i:s", $Return["unix_datetime"]); $Return["date"]["br"] = date("d/m/Y", $Return["unix_date"]); # Return return $Return; } # End Function
-
==============================
8.
이것을 구현하는 두 가지 방법
1) $date = strtotime(date); $new_date = date('d-m-Y', $date);
2)
$cls_date = new DateTime($date); echo $cls_date->format('d-m-Y');
-
==============================
9.
strftime 함수를 사용해보십시오. strftime과 같은 것 ($ time, '% d % m % Y');
-
==============================
10.
이 기능을 사용하여 모든 형식을 모든 형식으로 변환하십시오.
function reformatDate($date, $from_format = 'd/m/Y', $to_format = 'Y-m-d') { $date_aux = date_create_from_format($from_format, $date); return date_format($date_aux,$to_format); }
-
==============================
11.
mktime ()을 사용하여 내일의 날짜를 생성하고 형식을 dd / mm / yyyy 형식으로 변경 한 다음 echo를 사용하여 인쇄하는 PHP 코드가 있습니다.
$tomorrow = mktime(0, 0, 0, date("m"), date("d") + 1, date("Y")); echo date("d", $tomorrow) . "/" . date("m", $tomorrow). "/" . date("Y", $tomorrow);
-
==============================
12.
date('m/d/Y h:i:s a',strtotime($val['EventDateTime']));
from https://stackoverflow.com/questions/2487921/convert-date-format-yyyy-mm-dd-dd-mm-yyyy by cc-by-sa and MIT lisence
'PHP' 카테고리의 다른 글
소수점 이하 2 자리까지 표시 (0) | 2018.09.03 |
---|---|
JSON 인코딩 결과 (0) | 2018.09.03 |
PHP에서 MySQL 테이블의 마지막 삽입 ID를 얻는 방법은 무엇입니까? (0) | 2018.09.03 |
jQuery를 사용하여 AJAX 요청 콜백 (0) | 2018.09.03 |
PHP에서 동적 변수 이름과 함께 중괄호 사용 (0) | 2018.09.03 |