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

时间:2016-02-02 05:38:39

标签: php

我想在php中做一些这样的事情,当月到2016年6月,我想回应2016-17,但在此之前我回应2015-16我到目前为止的回声2015-16意味着它年初的变化,但我宁愿在六月开始做,

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

任何建议

3 个答案:

答案 0 :(得分:7)

非常基本但你可以使用它:

<?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年和连字符( - )之间。

答案 1 :(得分:4)

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

echo date('n') > 6 ? date('Y').'-'.(date('Y') + 1) : (date('Y') - 1).'-'.date('Y');

&#34; n&#34;格式字符在这种情况下更好,因为它返回的月份没有前导零。

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

答案 2 :(得分:2)

试试这个:

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');
}

演示:http://codepad.org/Z1zWIaiD