大家好我已经使用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))
答案 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
这将解决您的问题。