首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> 網頁程式設計 >> PHP 程式設計 >> PHP 相關知識

PHP 根據年月快速計算季度:一行程式碼實作

     編輯:PHP 相關知識

前言

財務報表、數據分析常需將月份對應到季度 (Q1-Q4)。PHP 只需簡單數學運算即可完成,無需複雜判斷式。

核心函數

function getQuarterByMonth(string $date): int {
    // $date 格式: '2024-05' 或 '202405' 或任意包含月份的字串
    $month = (int)substr($date, -2); // 取最後兩位
    return (int)ceil($month / 3);
}

// 測試
var_dump(getQuarterByMonth('2024-01')); // 1
var_dump(getQuarterByMonth('202403'));  // 1
var_dump(getQuarterByMonth('2024-04')); // 2
var_dump(getQuarterByMonth('06'));      // 2
var_dump(getQuarterByMonth('2024-12')); // 4

原理解析

  • 月份 1~3 → 除以 3 為 0.33~1 → ceil = 1 (Q1)。
  • 月份 4~6 → 1.33~2 → ceil = 2 (Q2)。
  • 月份 7~9 → 2.33~3 → ceil = 3 (Q3)。
  • 月份 10~12 → 3.33~4 → ceil = 4 (Q4)。

擴展:取得季度起始/結束月份

function getQuarterRange(int $quarter): array {
    $start = ($quarter - 1) * 3 + 1;
    $end   = $quarter * 3;
    return [$start, $end];
}
// Q2 => [4, 6]

總結

ceil((int)substr($date, -2) / 3) 一行解決年月轉季度,簡潔高效、無分支預測失誤,適合高頻呼叫場景。

  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved