转换日期显示 31-Dec-69



我想将日期转换为d-M-y格式,但似乎我做错了什么。请帮我纠正它。

<?php
$date = '30/04/2017';
echo date('d-M-y', strtotime($date));
?>  

我的输出:
31-Dec-69

通过我希望输出为30-Apr-17

使用

日期和时间时使用 DateTime 对象。您可以使用 DateTime::createFromFormat() 解析日期字符串,然后使用 DateTime::format() 按所需方式格式化:

<?php
$str = '30/04/2017';
$date = DateTime::createFromFormat('d/m/Y', $str);
echo $date->format('d-M-Y'); 
?>

工作演示

Use DateTime::createFromFormat()

$date = DateTime::createFromFormat('d/m/Y', '30/04/2017');
echo $date->format('d-M-Y');

试试这个:

<?php
$date = '30/04/2017';
$newDate = str_replace('/', '-', $date);
echo date('d-M-y', strtotime($newDate));
?>
// Output: 30-Apr-17

工作示例

<?php
$date = '30-04-2017';
echo date('d-M-y', strtotime($date));
?>

或使用

<?php
  $date = '25/05/2010';
  $date = str_replace('/', '-', $date);
  echo date('d-M-y', strtotime($date));
?>

相关内容

最新更新