这是我的jquery ajax请求,
我正在尝试将所选日期或手动增加天数发送给控制器
function myFunction(selected_first_date){
var get_my_value = $('#get_my_value').val();
$.ajax({
url :"<?php echo base_url();?>index.php/holiday_package_controller/PackageController/dateChangerFunction",
type:"POST",
data:{
get_my_value:get_my_value,
selected_first_date:selected_first_date
},
dataType: "json",
success: function(data){
//$('#cash_receipt_voucher_date').html(data);
console.log(data);
$('#incremented_date').val(data.incremented_date);
}
});
}
控制器
$get_my_value = $this->input->post("get_my_value");
$selected_first_date = $this->input->post("selected_first_date");
if(!empty($selected_first_date)){
for($i=0; $i<=$get_my_value; $i++)
$repeat = strtotime("+$i day",strtotime($selected_first_date));
$rdate = date('Y-m-d',$repeat);
print_r($rdate);
exit();
}
答案 0 :(得分:0)
我喜欢DateTime类来处理类似https://3v4l.org/g9v53这样的事情:
<?php
$date = new DateTime('2014-09-18 10:00:00');
$date->modify('+12 hours');
echo $date->format('Y-m-d H:i:s');
2014-09-18 22:00:00
以下是文档中的所有相对修改格式:
https://secure.php.net/manual/en/datetime.formats.relative.php
如果您发送的日期时间不是'Y-m-d H:i:s'
格式,请使用DateTime::createFromFormat($customFormat, $dateTimeString);
答案 1 :(得分:0)
根据上面的代码,首先请从循环中删除exit(),因为它将在第一次迭代中终止脚本,因此将ext()放在外部,就像
for($i=1; $i<=$get_my_value; $i++) {
$repeat = strtotime("+$i day",strtotime($selected_first_date));
$rdate = date('Y-m-d',$repeat);
print_r($rdate);
}
exit();
我也将$ i更改为从1开始,因此它将在所选日期的+1 Day
中将其视为strtotime
。保持print_r($rdate)
不变,然后检查输出。