PHP预订系统-计算时间给出错误的结果


PHP Bookings System - Calculate Time Giving Wrong Result

我正在做一个简单的汽车租赁系统的项目。我的问题出现在计算时间(租车的天数和小时数)

现在的时间(我在哪里)是12:15 PM

代码:

        //Test Variables
         $ciDate = '2016-08-28';
         $ciTime = '13:10';
        //calc Time
        $calcDate = $ciDate.$ciTime;        
        $calcDate =  strtotime($calcDate);
        $remaining = $calcDate - time();
        $days_remaining = floor($remaining / 86400);
        $hours_remaining = floor(($remaining % 86400) / 3600);
        $totPrice = $days_remaining * 4;
        //Disp Result
        echo $days_remaining. ' Days and ' . $hours_remaining. ' hours';

我的问题

当上面的代码执行时,我得到2天零5小时,这是不正确的考虑我的时间现在是12:15 PM 2016/08/26

我要冒险一下,猜测问题是由于服务器时间与我当前的时间不同?

关于如何解决上述问题的任何建议,非常感谢。编辑:

在撰写本文时,正确的结果应该是2天1小时

我不知道你在哪个时区,但看起来你的服务器在不同的区域。
你有很多方法来解决这个问题,但这里是code的方法。

date_default_timezone_set ( string $timezone_identifier );

所以如果你在巴格达你输入

date_default_timezone_set("Asia/Baghdad");

无论你在哪里。

查看此链接http://php.net/manual/en/timezones.asia.php

相关文章: