Php 从字符串生成日期

Php 从字符串生成日期,php,Php,我有一些像这样的绳子 $str = '14032017'; 我想将其转换为日期格式,并将结果显示为2017年3月14日 我已经试过了,但仍然不起作用: <?php $str = '14032017'; $strdate = strtotime($str); $date = date('d-m-Y',$strdate); echo $date; ?> 我怎样才能做到这一点呢?您可以使用DateTime类来实现这一点。 (我假设您的str是dmY格式) 您可以为此使用Dat

我有一些像这样的绳子

$str = '14032017';
我想将其转换为日期格式,并将结果显示为2017年3月14日

我已经试过了,但仍然不起作用:

<?php

$str = '14032017';
$strdate = strtotime($str);
$date = date('d-m-Y',$strdate);

echo $date;

?>


我怎样才能做到这一点呢?

您可以使用DateTime类来实现这一点。 (我假设您的str是dmY格式)


您可以为此使用DateTime类。 (我假设您的str是dmY格式)

试试这个

$str = '14032017';
$date = DateTime::createFromFormat('dmY', $str);
if($date === false){
   echo 'Invalid Date';
}else{
   echo $date->format('d-m-Y');
}
试试这个

$str = '14032017';
$date = DateTime::createFromFormat('dmY', $str);
if($date === false){
   echo 'Invalid Date';
}else{
   echo $date->format('d-m-Y');
}
在字符串中使用正确的格式。 对于14032017=dmY 2017年3月14日=d-m-Y等

在字符串中使用正确的格式。 对于14032017=dmY
对于14-03-2017=d-m-Y等…

这是
$str
您的unix时间戳吗?我刚得到那个字符串,我想转换它@似乎这不是一个时间戳@这是你的unix时间戳吗?我刚得到那个字符串,我想转换它@似乎这不是一个时间戳@萨希古拉蒂
    $str = '14032017';

    $strdate = DateTime::createFromFormat('dmY',$str)->format('Y-m-d H:i:s');