简体   繁体   English

日期范围为几个月的PHP

[英]Date range to months in PHP

I'm trying to set my output to “Date not confirmed” if the date from MySQL = 2013-12-25 & $daydiff = "anything" and output "Not available" if the MySQL date = "NULL" & and $daydiff = "anything" 如果MySQL日期= 2013-12-25&$ daydiff =“ anything”,我试图将输出设置为“ Date not Confirmed”,如果MySQL日期=“ NULL”&和$ daydiff,则输出“ Not available” =“任何东西”

My code below doesn't seem to work, any suggestions or alternatives? 我的以下代码似乎无效,有任何建议或替代方法吗?

$ArrivalDate == $variants_data['ArrivalDate'];

$daydiff=floor((abs(strtotime(date("Y-m-d")) - strtotime($ArrivalDate))/(60*60*24)));


if ( $daydiff == '%wildcard%' && $ArrivalDate == '2013-12-25') {
    $ETA ='Date Not Confirmed';
} 

elseif ( $daydiff == '%wildcard%' && $ArrivalDate == 'NULL') {
    $ETA ='Not available';
}

elseif ( $daydiff > 30 && $daydiff < 60 ) { // anything between 31 and 59 days is 1 month
    $ETA ='1 Month';
}

elseif ( $daydiff > 60 &&  $daydiff < 90  )  { // anything between 61 and 89 days is 2 months
    $ETA ='2 Months';
}

else
{
    $ETA ='';
}

Well you are assign variables in your if clauses... Single "=" is assigning. 好吧,您可以在if子句中分配变量。 I assume you want to check so you need "==" :) 我假设您要检查,所以您需要“ ==” :)

if (!empty($daydiff) &&  $ArrivalDate == '2013-12-25') {
   $ETA ='Date Not Confirmed';
} 

elseif (is_null($ArrivalDate) || $ArrivalDate == 'NULL') {
   $ETA ='Not available';
}

What is your output? 你的输出是什么? Always "Date Not Confirmed"? 总是“未确认日期”吗?

I would guess so, because "=" does not compare strings: 我猜是这样,因为“ =”不比较字符串:

if ( $daydiff = '%wildcard%' && $ArrivalDate = '2013-12-25') {
    $ETA ='Date Not Confirmed';
} 

would be 将会

if ( $daydiff == '%wildcard%' && $ArrivalDate == '2013-12-25') {
    $ETA ='Date Not Confirmed';
} 

But then, '%wildcard%' is not something, PHP replaces by 'anything'. 但是,“%wildcard%”就不算什么了,PHP替换为“任何东西”。 So, what is your exact error? 那么,您的确切错误是什么? If it does not matter, what $daydiff is, just leave it out of your condition. 如果没关系,$ daydiff是什么,就不要理会它。

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM