Date 日期大于另一个日期时获取值
我的Date 日期大于另一个日期时获取值,date,codeigniter-3,Date,Codeigniter 3,我的$\u POST['date']==01-2017和$\u POST['mon']==11-2016以及当我使用我的代码来比较大于此函数时 if(date($_POST['date'])>date($_POST['mon'])) { $data['f']=$this->admin_model->ajax_f(); $data['fine']=''; } 只有两个post值的第一个值被考虑,这意味着只有01和11不考虑整个值。您可以将日期转换为历
$\u POST['date']==01-2017
和$\u POST['mon']==11-2016
以及当我使用我的代码来比较大于此函数时
if(date($_POST['date'])>date($_POST['mon']))
{
$data['f']=$this->admin_model->ajax_f();
$data['fine']='';
}
只有两个post值的第一个值被考虑,这意味着只有
01
和11
不考虑整个值。您可以将日期转换为历元时间/unix时间戳,然后比较:
// field [0] is month, field [1] is year
$date_tmp = explode("-", $_POST['date']);
$mon_tmp = explode("-", $_POST['mon']);
// create epoch times
$date_secs = mktime(0,0,0,$date_tmp[0],0,$date_tmp[1]);
$mon_secs = mktime(0,0,0,$mon_tmp[0],0,$mon_tmp[1]);
if($date_secs > $mon_secs)
{
$data['f']=$this->admin_model->ajax_f();
$data['fine']='';
}
请参阅:您可以将日期转换为历元时间/unix时间戳,然后进行比较:
// field [0] is month, field [1] is year
$date_tmp = explode("-", $_POST['date']);
$mon_tmp = explode("-", $_POST['mon']);
// create epoch times
$date_secs = mktime(0,0,0,$date_tmp[0],0,$date_tmp[1]);
$mon_secs = mktime(0,0,0,$mon_tmp[0],0,$mon_tmp[1]);
if($date_secs > $mon_secs)
{
$data['f']=$this->admin_model->ajax_f();
$data['fine']='';
}
请参阅:更简单的内容。。。也许,在所有关于确保post值存在且格式正确的警告下
$post_date = strtotime('00-' . $_POST['date']);
$post_mon = strtotime('00-' . $_POST['mon']);
if($post_date > $post_mon) {
$data['f']=$this->admin_model->ajax_f();
$data['fine']='';
}
更简单的事情。。。也许,在所有关于确保post值存在且格式正确的警告下
$post_date = strtotime('00-' . $_POST['date']);
$post_mon = strtotime('00-' . $_POST['mon']);
if($post_date > $post_mon) {
$data['f']=$this->admin_model->ajax_f();
$data['fine']='';
}
你好,有人有什么想法吗?为什么不使用完整的日期格式,包括日、月、年?如果你使用的是完整日期格式,你可以使用strotime()这个概念是这样的,它意味着每月的金额($_POST['mon']和每月的支付金额($_POST['date']你好..有人知道你为什么不使用包括日、月、年在内的完整日期格式吗?如果你使用的是完整日期格式,你可以使用strotime()这个概念是这样的,它意味着本月的金额($_POST['mon'])和本月要支付的金额($_POST['date']