【问题标题】:How to set current year and previous year in variables using php?如何使用php在变量中设置当前年份和上一年?
【发布时间】:2017-06-07 18:57:39
【问题描述】:
  • 有一种情况。假设:

  • 财政年度 = 01/04/2017 至 31/03/2018

  • 我在数据库中有一个 input fielddatepickerdate 列。 如果有用户会选择today's date e.g 08/06/2017

  • 那么应该在日期表的帮助下显示这个current year i.e from 01/04/2017 to 08/06/2017的数据

  • 同时它应该显示previous year's data i.e from 01/04/2016 to 31/03/2017
  • 目前我使用$currentdate = date('d/m/Y') 来显示 从 db 到当前日期的全部数据。

$A1 = mysqli_query($conn,'SELECT sum(netvalue) FROMfintranWHERE groupNo = 21 AND docDate <= "'.$currentdate.'" ');

我们可以创建一些公式,但是我构建逻辑很差,所以请帮助我

【问题讨论】:

标签: php date


【解决方案1】:

你使用碳。
文档:- http://carbon.nesbot.com/docs/

$date = Carbon\Carbon::createFromFormat('d/m/Y', $date);
$date->subYear(); 
echo $date->format('d/m/Y'); // Previous year

【讨论】:

    【解决方案2】:

    您可以使用以下方法生成一年前的日期:

    function get_year_back_date($date, $format='d/m/Y') {
        return date($format, strtotime($date . ' -1 year'));
    }
    
    $previous_year = get_year_back_date('01/04/2017');
    

    您可以在此处查看此代码的运行情况:http://ideone.com/eXRoYB

    【讨论】:

    • 我可以建议:date('d/m/Y', strtotime('01/04/'. Date("Y") .' -1 year')) 让它在未来更加安全吗?
    • 或用户选择的任何日期
    • @Andreas 我已经更新了对相当通用功能的回答。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-01-06
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多