PHP日期不保存价值的时间戳工作

时间:2019-02-02 19:01:19

标签: php

我正在尝试使用php日期转换时间戳,就像这样...

update_option('last_lookup', time());
$last_lookup = get_option('last_lookup');

$timestamp1 = date("c", $last_lookup);
$timestamp2 = date("c" , 1549133279);

echo $last_lookup;
echo $timestamp1;
echo $timestamp2;

只有$timestamp2返回正确的结果,如果我回显$last_lookup,则返回正确的时间戳。

莫非$last_lookup是字符串和日期需要的整数

有人可以提出修复建议吗?

更新

在$ last_lookup上执行var_dump给我...

string(10) "1549133279"

2 个答案:

答案 0 :(得分:1)

您时间戳串是从一个Unix时间戳time()

可以将其转换为与date()功能时间戳格式。

例如,传递的你的字符串

1549133279

$timestamp = date('Y-m-d H:i:s', $t);

收益2019-02-02 18:47:59

编辑:

只是作为一个更新,我把你的代码,并把它放在wp-content/themes/twentynineteen/index.php(主题我使用测试),出于好奇的index.php文件,并实现了零的问题吧。我加在每个回波的终点断裂,并能够看到下面的:

1549137644
2019-02-02T20:00:44+00:00
2019-02-02T18:47:59+00:00

当然,时间有所不同,因为一个是在运行时确定的,另一个是绝对的,所以我可以肯定地说,您在此处发布的代码没有任何问题。

答案 1 :(得分:0)

此方法运行良好且经过测试,请尝试这种方法,如果仍然遇到问题,请使用其他功能调试代码

$last_lookup = time();

$timestamp1 = date("c", 1549133279);
$timestamp2 = date("c", "1549133279");
$timestamp3 = date("c", $last_lookup);

echo $last_lookup;
echo "<br>";
echo $timestamp1;
echo "<br>";
echo $timestamp2;
echo "<br>";
echo $timestamp3;