如何让date()在php

时间:2016-10-25 12:24:34

标签: php mysql

我从数据库中获取数据后使用date()函数,并将其输入date()函数。

它适用于所有其他输入,但在00:00:00失败,在这种情况下它返回01:01(但我想要00:00)

这是我的代码:

<?php
$timestamp = "0000-00-00 00:00:00";
echo date('d:m', strtotime(str_replace('-','/', $timestamp)));

我想在<title>标签内显示这样的内容

title="<?php echo @date('d:m', strtotime(str_replace('-','/', $timestamp))); ?>" 

问题:正在返回01:01为0000-00-00 00:00:00为其他工作正常如何让它返回00:00(for 0000-00-00 00:00:00 )

请提前帮助我

1 个答案:

答案 0 :(得分:1)

您的输入日期是无效日期,因此date功能不会返回想要的结果。 但这会奏效:

<?php
$timestamp = "0000-00-00 00:00:00";
$arr = explode(" ", $timestamp);
$arr = explode("-", $arr[0]);
echo $arr[1].':'.$arr[2];

或单行:

echo preg_replace('/(0000)-(00)-(00) (.+)/', '$2:$3', $timestamp);

或者这个(即使有效日期也会有效):

echo preg_replace('/([0-9]{4})-([0-9]{2})-([0-9]{2}) (.+)/', '$2:$3', $timestamp);