2

フォーマットを持っているデータを変換したい

$dateToday = date("d-m-Y");

したがって、$dateToday の値は27-12-2012 です

次に、mysql データ型dateでデータベースに保存します。2012-12-27の形式で mysql データベースに保存できる27-12-2012の値を保持するにはどうすればよいですか? お願い助けて。ありがとうございました

4

7 に答える 7

3

はい、日付を変換できますstrtotime();

$dateToday = date("d-m-Y");
$newDate = date("Y-m-d", strtotime($dateToday));

出力: 2012-12-27

そして、データをデータベースに保存できます。

日付を復元する必要がある場合は、次のようにこの操作を逆にすることができます。

$dateFromDatabase = "2012-12-27";
$reverseDate = date("d-m-Y", strtotime($dateFromDatabase));

出力: 27-12-2012

(2回目のデートコールで「Ymd」を「dmY」に修正)

于 2012-12-27T14:26:20.477 に答える
0

出力が間違っています。これはデータベースからの日付を表示できません。これは 1970/01/01 を示しています..... $date=Date($year."/". $month."/". $day); $date=Date("Ymd", strtotime($date)); $日付をエコーし​​ます。enter code here

于 2013-12-24T09:37:28.767 に答える
0

その方法を教えます。説明するために、DATE 型のtesttable11 つの列のみを含む 1 つのテーブルを作成します テーブル作成クエリを以下に示しますcol1

CREATE TABLE `testtable1` (
    `col1` DATE NULL DEFAULT NULL
)

次のクエリは、必要に応じて機能します。最初の行で、文字列変数を宣言しました。2 行目で、その文字列を必要な日付形式に変換し、テーブルに挿入しました。

set @var1='27-12-2012';
insert into testtable1 values(STR_TO_DATE(@var1, '%d-%m-%Y'))
于 2012-12-27T14:37:55.110 に答える
0

この形式で MYSQL テーブルにデータを格納する場合は、列を として宣言する必要がありますvarchar

datetime ストアの日付は次のような別の形式であるため、'yyyy-mm-dd hh:mm:ss'

于 2012-12-27T14:19:33.850 に答える
0

文字列から日付に変換するために mysql 関数、つまり STR_TO_TIMEを使用することもでき ます。SQL クエリは次のようになります。

INSERT INTO foo_table (foo_date)
VALUES (STR_TO_DATE('27-12-2012','%d,%m,%Y'))
于 2012-12-27T14:42:17.140 に答える
0

これがどのように機能するかです:

データを適切な mysql 形式で保存する必要があります。これにより、日付の順序付け、集計、フィルタリング、および計算を行うことができます。

ただし、データを表示する必要がある場合は、mysqlDATE_FORMAT()関数を使用して、任意の形式に変換できます。

SELECT DATE_FORMAT(dt,'%d-%m-%Y') as dtf FROM TABLE

dtfカスタムフォーマットでフォーマットされたフィールドを提供します

于 2012-12-27T14:29:47.373 に答える
-1

これを試して

$dateToday = date("d-m-Y");
$dateForMysql = date('Y-m-d', $dateToday));
于 2012-12-27T14:24:55.657 に答える