php 날짜를 mysql 형식으로 변환
php에는 다음 코드를 사용하는 날짜 필드가 있습니다.
$date = mysql_real_escape_string($_POST['intake_date']);
db에 포함하기 위해 MySql 형식 0000-00-00으로 변환하려면 어떻게 해야 합니까?date('Y-m-d' strtotime($date)';와 같은 경로입니까?제가 부탁하는 이유는 제가 이것을 여러 가지로 시도해봤지만 효과가 없을 것 같기 때문입니다.1970년 또는 기타 변형으로 표시됩니다.대단히 고맙습니다
$date = mysql_real_escape_string($_POST['intake_date']);
이 1인 . MySQL 럼 my myDATE 삭제:
$date = date('Y-m-d', strtotime(str_replace('-', '/', $date)));
이 2인 . MySQL 럼 my myDATETIME 삭제:
$date = date('Y-m-d H:i:s', strtotime(str_replace('-', '/', $date)));
strototime()할 수 -세퍼레이터는 뺄셈을 시도합니다.
업데이트, 사용할 수 없는 날짜 형식strtotime()츠키다
$date = '02/07/2009 00:07:00';
$date = preg_replace('#(\d{2})/(\d{2})/(\d{4})\s(.*)#', '$3-$2-$1 $4', $date);
echo $date;
출력:
2009-07-02 00:07:00
이 사이트에는 두 가지 매우 간단한 솔루션이 있습니다.코드 체크만 하면 됩니다.필요에 따라 설명을 제공했습니다.클릭을 줄일 수 있습니다.
http://www.richardlord.net/blog/dates-in-php-and-mysql
1. DATETIME 필드에 날짜를 저장하고 PHP date() 및 strtotime() 함수를 사용하여 PHP 타임스탬프와 MySQL DATETIME 간에 변환하는 것이 일반적입니다.방법은 다음과 같이 사용됩니다.
$mysqldate = date( 'Y-m-d H:i:s', $phpdate );
$phpdate = strtotime( $mysqldate );
2. 두 번째 옵션은 MySQL에 작업을 맡기는 것입니다.MySQL에는 데이터베이스에 액세스하는 지점에서 데이터를 변환하는 데 사용할 수 있는 기능이 있습니다.UNIX_TIMESTamp는 DATETIME에서 PHP 타임스탬프로 변환하고 FROM_UNIXTIME은 PHP 타임스탬프에서 DATETIME으로 변환합니다.이 메서드는 SQL 쿼리 내에서 사용됩니다.그래서 다음과 같은 쿼리를 사용하여 날짜를 삽입하고 업데이트합니다.
$query = "UPDATE table SET
datetimefield = FROM_UNIXTIME($phpdate)
WHERE...";
$query = "SELECT UNIX_TIMESTAMP(datetimefield)
FROM table WHERE...";
MySQL을 .FROM_UNIXTIME() ★★★★★★★★★★★★★★★★★」UNIX_TIMESTAMP().
SQL에서 이를 사용합니다. 예:
mysql> SELECT UNIX_TIMESTAMP(NOW());
+-----------------------+
| UNIX_TIMESTAMP(NOW()) |
+-----------------------+
| 1311343579 |
+-----------------------+
1 row in set (0.00 sec)
mysql> SELECT FROM_UNIXTIME(1311343579);
+---------------------------+
| FROM_UNIXTIME(1311343579) |
+---------------------------+
| 2011-07-22 15:06:19 |
+---------------------------+
1 row in set (0.00 sec)
인 경우 intake_date를 사용할 수 .date() ★★★★★★★★★★★★★★★★★」strtotime()
$mysqlDate = date('Y-m-d H:i:s', strtotime($_POST['intake_date']));
이 은 날짜 이 음, 음, 음, 음, 이, 이, 이, 이, however, however, however, however, however, however, however, however, however, however, however, however, however, however, however, however, however, however, however, however, , however, however, however, strtotime()지원되는 형식에 대해서는 문서 페이지를 참조하십시오.
dd/mm/yyy 형식으로 게시된 날짜가 있는 경우 다음을 사용하십시오.
$date = explode('/', $_POST['posted_date']);
$new_date = $date[2].'-'.$date[1].'-'.$date[0];
단위가 mm/dd/yyy인 경우 두 번째 행을 변경합니다.
$new_date = $date[2].'-'.$date[0].'-'.$date[1];
PHP 5.3에는 지정한 형식에 관계없이 DateTime 개체에서 생성 및 재포맷하는 기능이 있습니다.
$mysql_date = "2012-01-02"; // date in Y-m-d format as MySQL stores it
$date_obj = date_create_from_format('Y-m-d',$mysql_date);
$date = date_format($date_obj, 'm/d/Y');
echo $date;
출력:
01/02/2012
은 "MySQL"을 도 있습니다.STR_TO_DATE()때하고, '삽입/삽입할 때', '삽입/삽입할 때', '삽입'DATE_FORMAT()조회할 때.
$php_date = "01/02/2012";
$update_query = "UPDATE `appointments` SET `start_time` = STR_TO_DATE('" . $php_date . "', '%m/%d/%Y')";
$query = "SELECT DATE_FORMAT(`start_time`,'%m/%d/%Y') AS `start_time` FROM `appointments`";
function my_date_parse($date)
{
if (!preg_match('/^(\d+)\.(\d+)\.(\d+)$/', $date, $m))
return false;
$day = $m[1];
$month = $m[2];
$year = $m[3];
if (!checkdate($month, $day, $year))
return false;
return "$year-$month-$day";
}
몇 가지 옵션이 있습니다.
타임스탬프로 변환하여 MySQL의 날짜 구문 분석 옵션을 사용하여 다른 게시물에 지시된 대로 사용하거나 사용
$_POST [ intake _ date ]의 날짜 형식을 알고 있다면 폭발을 사용하여 연도, 월, 시간을 얻은 후 연결하여 유효한 mySql 날짜를 생성할 수 있습니다.예를 들어, 12월 15일 같은 날짜에 물건을 받는다면 다음과 같이 할 수 있습니다.
$date = explode($_POST['intake_date'], '/');
mysql_date = $date[2].'-'$date[1].'-'$date[0];
유효한 날짜(y-m-d', strtotime(date))도 동작합니다.
언급URL : https://stackoverflow.com/questions/6790930/convert-php-date-to-mysql-format
'programing' 카테고리의 다른 글
| MySQL INTO OUTFILE이 기존 파일을 덮어쓰시겠습니까? (0) | 2022.10.18 |
|---|---|
| Gson이 value=map 엔트리를 무시합니다. (0) | 2022.10.18 |
| java.sql.SQLException:jdbc:mysql://localhost:3306/dbname에 적합한 드라이버를 찾을 수 없습니다. (0) | 2022.10.18 |
| 여러 요청을 사용하여 액세스 토큰 새로 고침 (0) | 2022.10.18 |
| j회피해야 할 함정 쿼리 (0) | 2022.10.18 |