我试图比较两个不同的DateTime并获得差异。
我得到此错误PHP致命错误:在...中尝试运行/编译我的代码时,在非对象上调用成员函数diff()但是无法弄清楚我做错了什么。
$datetime = date("Y-m-d H:i:s");
$localhost = "localhost";
$conn = mysqli_connect($localhost, $mysqlUsername, $mysqlPassword, $mysqlDB);
if (!$conn)
{
die("Connection failed: " . mysqli_connect_error());
echo "Connection to DB failed";
}
$sql = "SELECT * FROM UniqueUsers";
$result = mysqli_query($conn, $sql);
if ($result->num_rows > 0 )
{
while($row = $result->fetch_assoc())
{
$datetime1 = new DateTime($row['worldtime']);
$interval = $datetime->diff($datetime1);
echo $interval->format('%R%a days');
}
}
答案 0 :(得分:1)
您的$datetime
变量不是对象。函数 date() 不返回DateTime对象,而是返回格式化字符串。
用
替换你的第一行$datetime = new DateTime(date("Y-m-d H:i:s"));