ホームページ >データベース >mysql チュートリアル >PHP の日付を MySQL の DATE または DATETIME 形式に変換するにはどうすればよいですか?
PHP 日付を MySQL 形式に変換する
PHP 日付フィールドを操作する場合、MySQL 形式に変換する必要がある場合があります。データベースに挿入する前は 0000-00-00。これは、PHP 日付の特定の形式に応じてさまざまな方法で実現できます。
DATE 列型の日付の変換
MySQL 列が DATE 型の場合、時刻ではなく日付部分のみを保存する場合は、次のコードを使用します。
$date = date('Y-m-d', strtotime(str_replace('-', '/', $date)));
このコードは、 PHP のダッシュ区切りの日付を、strtotime() が正しく解析できるスラッシュ区切り形式に変換します。その後、日付は必要な MySQL 形式でフォーマットされます。
DATETIME カラム型の日付の変換
MySQL カラムが DATETIME 型の場合、日付と日付の両方が格納されます。時間コンポーネントを使用するには、次のコードを使用します。
$date = date('Y-m-d H:i:s', strtotime(str_replace('-', '/', $date)));
このコードには、時間コンポーネントが含まれています。
代替方法
PHP の日付が strtotime() を使用して変換できる一貫した形式に従っていない場合、代替方法は正規表現を使用することです。日付を解析して再フォーマットするには:
$date = '02/07/2009 00:07:00'; $date = preg_replace('#(\d{2})/(\d{2})/(\d{4})\s(.*)#', '-- ', $date);
この正規表現は、日付と時刻のコンポーネントを必要な MySQL に再配置します。形式。
以上がPHP の日付を MySQL の DATE または DATETIME 形式に変換するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。