如何将日期变量隐藏为月份名称:


How to covert date variable as Month Name :

我尝试插入日期($dateTime)变量作为月份名称

 $dateTime = $req->date;
   $arr = explode(" ",$dateTime);
    $date = $arr[0];
$openPunch->in_time = $dateTime;
$ok = $openPunch->Save();

当我尝试此代码时,它将在我的sql数据库中以这种格式保存日期('2015-12-09 11:51:28')但我只想保存月份名称('December')????我怎样才能达到目标???

这与您的需求相同

您可以设置$dateTime=$req->date

<?php
 $dateTime=date('Y-m-d h:m:i');
 $arr = explode(" ",$dateTime);
 $date=explode("-",$arr[0]);
 $monthNum = $date[1];
 echo $monthName = date("F", mktime(0, 0, 0, $monthNum, 10));
?>

使用MySQL DATE_FORMAT

DATE_FORMAT('2015-12-09 11:51:28','%M')

用于插入

INSERT INTO table_name (column1)
VALUES (DATE_FORMAT('2015-12-09 11:51:28','%M'))

不能在具有datetime格式的列上保存仅限月份的文本。

但是,您仍然可以通过查询或PHP以一个月的文本格式获取数据。

使用SELECT查询:

SELECT DATE_FORMAT(date_column,'%M') AS year_text FROM table

使用php:

$dateTime = date("F", strtotime($dateTime));

但如果您真的想在MySQL数据库中以文本格式存储月份,您可以使用字符串类型的列,如charvarchar

IF OrderDate在SQL数据库中看起来像2014-12-11 13:23:44.657

SQL查询

$monthNum =   SELECT EXTRACT(MONTH FROM OrderDate) AS OrderMonth ;
$monthName = date("F", mktime(0, 0, 0, $monthNum, 10));
echo $monthName;