【发布时间】:2014-07-16 17:58:48
【问题描述】:
我使用 laravel 的 eloquent 从数据库中收集数据。我需要将 DATETIME 值转换为时间戳。我成功地做到了,但无法将其分配回结果。它让我头疼。代码sn-p如下。
public function getArticle() {
$article = new Article;
$data = $article::find(Input::get("article_id"));
$data->created_at = $this->getTimestamp($data->created_at);
return $data;
}
将日期时间转换为时间戳的函数如下:
public function getTimestamp($datetime) {
$time = strtotime($datetime);
return $time;
}
任何帮助将不胜感激
【问题讨论】:
-
"但无法将其分配回结果。" - 为什么?是什么东西或某人阻止你为此编写代码?
-
"$data->created_at = $this->getTimestamp($data->created_at);"你想在那里做什么?它只是将同一时间复制回自身?
-
如果遇到问题,请尝试在函数调用前后使用 var_dump 输出
$data->created_at,看看它是否具有您期望的值。 -
@TheShiftExchange
It is just copying the same time back to itself?它在通过函数调用后设置一个变量。 -
是的——但是函数调用是从那个对象上已经的时间戳返回一个strtotime。所以它实际上并没有做任何有用的事情。