我正在使用laravel 5.我尝试使用
$now = DateTime();
$timestamp = $now->getTimestamp();
但它显示错误喜欢这个。
FatalErrorException in ProjectsController.php line 70:
Call to undefined function App\Http\Controllers\DateTime()
我该怎么办?
答案 0 :(得分:135)
DateTime
不是函数,而是class。
当你引用像new DateTime()
这样的类时,你会在当前命名空间中搜索该类。但是DateTime
类显然不存在于您的控制器命名空间中,而是存在于根命名空间中。
您可以通过添加反斜杠来在根命名空间中引用它:
$now = new \DateTime();
或者在顶部添加一个import语句:
use DateTime;
$now = new DateTime();
答案 1 :(得分:9)
最好的方法是使用Carbon依赖项。
使用Carbon\Carbon::now();
,您可以获得当前的日期时间。
使用Carbon,你可以像使用DateTime一样。事情是这样的:
$tomorrow = Carbon::now()->addDay();
$lastWeek = Carbon::now()->subWeek();
答案 2 :(得分:0)
如果您只想获取当前的UNIX时间戳,我只需使用time()
$timestamp = time();
答案 3 :(得分:-1)
实际上,当我在控制器顶部添加use DateTime
时,可以解决这个问题。