Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/298.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
SQL和PHP日期时间…最直接的方法_Php_Mysql_Datetime - Fatal编程技术网

SQL和PHP日期时间…最直接的方法

SQL和PHP日期时间…最直接的方法,php,mysql,datetime,Php,Mysql,Datetime,我使用mysql从datetime格式的字段中提取数据。我用PHP抓住了它,并对它进行了回应。我需要改变格式,使它是人类可读的。理想情况下,我希望在PHP中这样做,所以我只需要更改一个PHP文件。如果我在SQL中这样做,它将影响多个文件 现在输出如下:2011-05-3021:28:37。我需要它看起来像这样:05/30/2011 这是我的密码: $query = "SELECT `fileName`, `imageName`,

我使用mysql从datetime格式的字段中提取数据。我用PHP抓住了它,并对它进行了回应。我需要改变格式,使它是人类可读的。理想情况下,我希望在PHP中这样做,所以我只需要更改一个PHP文件。如果我在SQL中这样做,它将影响多个文件

现在输出如下:
2011-05-3021:28:37
。我需要它看起来像这样:
05/30/2011

这是我的密码:

$query = "SELECT `fileName`, 
                 `imageName`,  
                 `imageCaption`, 
                 `imageDate` 
            FROM `images` 
           WHERE `gallery` = '$gallery' 
             AND `imageOrder` = '$featuredImage'";

$result = mysql_query($query);
$num = mysql_numrows($result);

$i = 0;
while ($i < $num) {
  $fileName = mysql_result($result,$i,"fileName");
  $order = mysql_result($result,$i,"imageOrder");
  $imageName = mysql_result($result,$i,"imageName");
  $imageCaption = mysql_result($result,$i,"imageCaption");
  $date = mysql_result($result,$i,"imageDate");

  echo "$date";

  $i++;
}
$query=“选择`fileName`,
`imageName`,
`图像标题`,
`imageDate`
来自“图像”
其中'gallery`='$gallery'
和'imageOrder`='$featuredImage';
$result=mysql\u query($query);
$num=mysql\u numrows($result);
$i=0;
而($i<$num){
$fileName=mysql_result($result,$i,“fileName”);
$order=mysql_result($result,$i,“imageOrder”);
$imageName=mysql_结果($result,$i,“imageName”);
$imageCaption=mysql_result($result,$i,“imageCaption”);
$date=mysql_result($result,$i,“imageDate”);
回显“$date”;
$i++;
}

首先需要将datetime字段转换为时间戳,然后将其传递给PHP的日期函数进行格式化

$date_to_time = strtotime(mysql_result($result,$i,"imageDate"));
$date = date('d/m/Y',$date_to_time);

您需要首先将datetime字段转换为时间戳,然后将其传递给PHP的date函数进行格式化

$date_to_time = strtotime(mysql_result($result,$i,"imageDate"));
$date = date('d/m/Y',$date_to_time);

这应该适合您:

$date = mysql_result($result,$i,"imageDate");
$objDate = DateTime::createFromFormat('Y-m-d H:i:s', $date);
echo $objDate->format('m/d/Y');

这应该适合您:

$date = mysql_result($result,$i,"imageDate");
$objDate = DateTime::createFromFormat('Y-m-d H:i:s', $date);
echo $objDate->format('m/d/Y');

您可以使用Zend框架中的Zend_日期,它可以接受您添加到其中的任何日期,并以您想要的任何格式打印。您不必使用整个ZF库,您可以在独立的事务中使用单个组件。可能的副本可以使用Zend Framework中的Zend_日期,它可以接受您添加到其中的任何日期,并以您想要的任何格式打印。你不必使用整个ZF库,你可以在一个独立的事务中使用单个组件。可能是Michael的副本..谢谢..我不知道我必须先将其转换为时间戳…这就是为什么我一直丢失的原因..我使用了date()以前,但它给了我错误的日期…谢谢你的帮助…现在可以用了Michael…谢谢…我不知道我必须先把它转换成时间戳…这就是为什么我一直迷路的原因…我以前用过date()但它给了我错误的日期…谢谢你的帮助…现在可以用了