為什麼我會做這個?
曾經在處理政府資料或學校系統時,常常會碰到「中華民國年」這個格式。
比方說報表上日期顯示是 110-01-01
,實際上代表的是 2021-01-01
。
這個轉換不難,但每次寫都很瑣碎,常常見到以下幾種處理方式:
- 手動剪貼公式 西元 = 民國 + 1911
- 用 substr() 去補年份
- 或乾脆整個用文字處理但沒有驗證格式
總覺得這種重複性邏輯應該包成一個簡單好用的工具,所以我就動手做了一個:
一行指令安裝,兩行程式碼轉換。
套件簡介
套件名稱: linhuan/roc_ad_date_convert
功能定位: 專門處理 ROC ⇄ AD 日期轉換的 PHP 套件
適用場景: 台灣常見的報表系統、表單轉換、日期比對等需求
授權: MIT,歡迎自由使用、改作、商用
如何安裝?
請先確認你有使用 Composer,然後執行:
composer require linhuan/roc_ad_date_convert
安裝完後即可透過 autoload
引入使用。
使用範例
<?php
require 'vendor/autoload.php';
use RocAdDateConvert\RocAdDateConvert;
// ROC → AD
$rocDate = '110-01-01';
$adDate = RocAdDateConvert::convertROCToAD($rocDate);
echo "ROC 日期: $rocDate, AD 日期: $adDate\n"; // 2021-01-01
// AD → ROC
$adDate = '2024-01-01';
$rocDate = RocAdDateConvert::convertADToROC($adDate);
echo "AD 日期: $adDate, ROC 日期: $rocDate\n"; // 113-01-01
你可以根據實際輸入的日期字串,進行轉換。
技術補充
- 採用 PSR-4 標準命名空間與類別
- 支援的格式為: ROC:YYY-MM-DD(如 112-08-07) AD:YYYY-MM-DD(如 2023-08-07)
- 目前版本為 v1.0.0,未來視需求再擴充
Packagist 連結
👉 https://packagist.org/packages/linhuan/roc_ad_date_convert
如果你也想試試
這是一個很小的工具,但能幫助你省下不少重複勞動的時間。如果你也在 PHP 專案中經常需要處理 ROC ⇄ AD 轉換,歡迎安裝使用,也可以給我一些 feedback。
未來我會持續更新並分享更多實用小工具,
歡迎追蹤「麟製所」,或直接留言交流 🙌