PHP在每年6月结束一个财政年度

PHP在每年6月结束一个财政年度,php,Php,我想用php做一些类似的事情,当这个月到2016年6月时,我想回应2016-17,但在此之前,我回应2015-16,我到目前为止的回应2015-16意味着它会随着年初发生变化,但我更希望它在6月以后这样做 echo date('Y') .'-'.date('y', strtotime('+1 year')); 任何建议都非常基本,但您可以使用: <?php if (date('m') > 6) { $year = date('Y')."-".(date('Y') +1)

我想用php做一些类似的事情,当这个月到2016年6月时,我想回应2016-17,但在此之前,我回应2015-16,我到目前为止的回应2015-16意味着它会随着年初发生变化,但我更希望它在6月以后这样做

echo   date('Y') .'-'.date('y', strtotime('+1 year'));

任何建议都非常基本,但您可以使用:

<?php
if (date('m') > 6) {
    $year = date('Y')."-".(date('Y') +1);
}
else {
    $year = (date('Y')-1)."-".date('Y');
}
echo $year; // 2015-2016
?>

说明:

如果当前月份大于6,则将打印当前年份和+1年以及它们之间的连字符(-)

如果当前月份小于6,则它将打印当前年份和-1年以及它们之间的连字符(-)。

尝试以下操作:

if(date('m') >= 06) {
   $d = date('Y-m-d', strtotime('+1 years'));
   echo   date('Y') .'-'.date('y', strtotime($d));
} else {
  $d = date('Y-m-d', strtotime('-1 years'));
  echo   date('Y', strtotime($d)).'-'.date('y');
}

演示:

这可以通过一个简单的oneliner解决:

echo date('n') > 6 ? date('Y').'-'.(date('Y') + 1) : (date('Y') - 1).'-'.date('Y');
在本例中,“n”格式字符更好,因为它返回的月份没有前导零


请注意,此解决方案取决于您机器的时区设置。如果您在国际或至少在许多时区使用此选项,则可能不正确。

自动计算财政年度- 四月至三月


您是否尝试过任何分支逻辑?带有
if
语句的内容?您将需要在某个时间点获取多于一年的数据,并确定月份是六月还是更晚。在这种情况下,“n”格式字符更好,因为它返回的月份没有前导零。请注意,此解决方案取决于您机器的时区设置。如果您在国际或至少在许多时区使用此选项,则可能不正确。Oneliner:
echo date('n')>6?日期('Y')。-'(日期('Y')+1):(日期('Y')-1)。-'。日期('Y')