0

我在 php 中使用 DateTime 对象来获取日期范围

但是我无法将 DateTime 对象的值传递给函数。

当我尝试将其分配给变量时,该变量为空

代码如下

$date1 = new DateTime('2013-04-11');
$test = $date1->setTime($i, 59);
echo $test;

有人知道如何将 $date1 分配给变量吗?

4

3 回答 3

3

这将返回一个DateTime没有toString方法的对象。

以上将产生一个致命错误(你应该真正启用错误):

可捕获的致命错误:第 7 行的 /code/KHCgOS 中的类 DateTime 的对象无法转换为字符串

PHP Catchable 致命错误:第 7 行 /code/KHCgOS 中的类 DateTime 对象无法转换为字符串

您应该执行以下操作:

echo $test->format('H:i:s d-m-Y');

更多信息:http ://codepad.viper-7.com/TNHGlj

注意:在生产机器上,您还应该启用错误报告,但您应该记录它们而不是显示它们

于 2013-04-25T09:13:58.437 回答
0

使用http://www.php.net/manual/en/datetime.format.php

   $date1 = new DateTime('2013-04-11');
   $date1->setTime($i, 59);
   echo $date1->format('Y-m-d H:i:s');
于 2013-04-25T09:15:26.633 回答
0

DateTime::setTime 函数文档中,它返回一个 DateTime 对象,因此为了打印您必须使用DateTime::format 函数的值。这是一个工作示例:

<?php
$i = 14;

$date1 = new DateTime('2013-04-11');
$date1->setTime($i, 59);

echo $date1->format('Y-m-d H:i:s') . "\n";

返回

2013-04-11 14:59:00
于 2013-04-25T09:17:12.520 回答