지정하십시오. 형식을 정확하게 전달할 수 있는 '만약 내가 결과를 미리 날짜 ()' 기능을 삽입할지 붙여넣습니다 MySQL 'datetime' 방식의 것으로 표시됩니까?
종료기: '날짜 (y 메가 d h:i:s" ";)' 를 사용하는 숫자 산정한다.
편집: 'G', 'H' 전환된 것으로 보이지만, 24 시간 형식을 사용할 수 있는 최고의 0 년대 귀의하지않는다고 영향을 좋습니다.
<?php $mysqltime = date ("Y-m-d H:i:s", $phptime); ?>
mysql> insert into a_table values(FROM_UNIXTIME(1231634282));
Query OK, 1 row affected (0.00 sec)
mysql> select * from a_table;
+---------------------+
| a_date |
+---------------------+
| 2009-01-10 18:38:02 |
+---------------------+
내가 이 기능을 사용하여 (PHP 7)
function getDateForDatabase(string $date): string {
$timestamp = strtotime($date);
$date_formated = date('Y-m-d H:i:s', $timestamp);
return $date_formated;
}
이전 버전의 PHP (PHP <. 7)
function getDateForDatabase($date) {
$timestamp = strtotime($date);
$date_formated = date('Y-m-d H:i:s', $timestamp);
return $date_formated;
}
이 간단한 답을 찾는 날 미치게 만들고 몰고 왔다. 마지막으로 내가 잡을 수 있는 좋은 것 같다 "며" 이 함수는 모든 입력 및 열거하십시오 SQL 문자열 맞다 또는 적어도 적절하고 체크 가능. # 39 의 경우, 아마도 31-12-1999 it& it& # 39 의 won& # 39, t throw 나쁜 오류 (잘못된 하지만 mysql.
function MakeSQLDate($date) {
if (is_null($date)) {
//use 1999-12-31 as a valid date or as an alert
return date('Y-m-d', strtotime('1999-12-31'));
}
if (($t = strtotime($date)) === false) {
//use 1999-12-31 as a valid date or as an alert
return date('Y-m-d', strtotime('1999-12-31'));
} else {
return date('Y-m-d H:i:s', strtotime($date));
}
}
'클래스' 에서 datetime 사용하여 + php 7.
function getMysqlDatetimeFromDate(int $day, int $month, int $year): string {
$dt = new DateTime();
$dt->setTimezone(new DateTimeZone('UTC'));
$dt->setDate($year, $month, $day);
$dt->setTime(0, 0, 0, 0); // set tine to midnight
return $dt->format("Y-m-d H:i:s");
}
작은 부록 수락됨 대답: 만약 datetime '데이터베이스' 로 저장되어 UTC (내가 항상 책임질래), ' (y 메가 d h:i:s" ";)' 대신 '콩지름에 시마다테 날짜 (y 메가 d h:i:s" ";)'.
특히 일부 처리할 수 있도록 모든 답을 원하는 경우, 또는 MySQL 의 UTC_TIMESTAMP ',' 아니, 차라리 MySQL& 삽입하십시오 제안하세요 # 39 와 같은 결과를 얻을 수 있습니다.
참고: 이 질문에 대해 이 동네 사람들은 현재 하게하면서요.
이 것이 더 정확한 길일. 몇 초 뒤에 이 곳에 확증하노라 자리로 더 정밀하게.
"'php 이제 날짜 = $ (& # 39 Y-m-d\TH:i:s.uP&,, # 39 시간 ()); "'