根据当地情况,StrToTime没有时间

时间:2016-03-04 07:02:26

标签: php codeigniter

大家好我已经使用strtotime来转换日期,但我遇到的问题是它将时间设置为19:00:00,这是错误的。我发送一个日期字符串然后给它strtotime并设置时间本身。现在我的时间是11:58但它将时间存储为19:00。请告诉我为什么我会遇到这个错误。以下是代码:strtotime($s_date) $s_date仅包含日期字符串strtotime设置时间

我发送的日期字符串是03/04/2016

HTML

              <input type="text" class="form-control" id="starts" data-container="#addNewEvent"
              data-plugin="datepicker">

调用Ajax

$.ajax({
          type: "POST",
          url:  base_url + "apps/calendar/insertCalendar",
          async : false,
          dataType: 'html',
          data: {

            'start': $('#starts').val(),
            'end': $('#ends').val(),
            'title': $('#addTitle').val(),
            'description': $('#addDescription').val(),
            'type':type
           },
          success: function(mark_up){
            toastr.options = {positionClass: 'toast-top-center'};
            toastr.success('Your reminder has been created', 'Reminder created');
            window.location.reload();
          }
        });

控制器方法

 public function insertCalendar(){
   $s_date = $_POST["start"];
   $p = strtotime($s_date);
   error_log($p)
 }

还有一件事我在mongodb中进行了调整,所以我从strtotime获得的对象将它们转换为new MongoDate(strtotime($s_date))

1 个答案:

答案 0 :(得分:1)

首先我们需要先设置SMTPSecure

timezone

然后您可以使用以下代码获取时间和日期:

date_default_timezone_set('Asia/Karachi');

如果要将日期转换为所需格式。 例如。 echo date('Y-m-d h:i:s'); /* Current date and time*/ echo date('Y-m-d'); /* Current date */ echo date('h:i:s'); /* Current time */ ,请使用

03/04/2016

您将根据$s_date = '03/04/2016'; echo date('Y-m-d',strtotime($s_date)); /* Convert date into mysql date format */ Y-m-d格式获取日期。{/ 1}}。

现在您希望用户提供的日期包含当前时间,那么您应该使用

2016-03-04

这将解决您的问题。