lee / carbon-sas-date
Carbon的SAS日期格式助手
v1.0
2020-02-18 18:12 UTC
Requires
- php: >=7.2
- nesbot/carbon: ^2.28
Requires (Dev)
- phpunit/phpunit: ^8 || ^9
This package is auto-updated.
Last update: 2024-09-19 12:50:46 UTC
README
介绍
- SAS是一种编程语言,它有自己的日期处理方法。
- 这是一个辅助工具,用于将给定的SAS日期/年份/时间格式转换为Carbon日期格式。
- 它还可以直接使用SAS日期格式来创建一个Carbon实例。
安装
使用composer安装此包
composer require lee/carbon-sas-date:^1.0
注意
某些SAS日期格式无法找到当前映射的Carbon日期格式。
当在CarbonSasHelper::createDateFromFormat、CarbonSasHelper::createTimeFromFormat或CarbonSasHelper::createYearFromFormat方法中使用这些SAS日期/年份/时间格式时,将抛出InvalidArgumentException异常。
使用方法
通过CarbonSasHelper类从SAS日期格式创建
use Lee\CarbonSasHelper; $sasDateFormat = 'DDMMYY.'; $sasDate = '17/03/13'; $carbonSasHelper = CarbonSasHelper::createDateFromFormat($sasDateFormat, $sasDate); // Carbon class instance $carbonSasHelper->format('d/m/y'); // '17/03/13'
实际案例
在实际案例中,有时会遇到以下SAS日期时间格式
06FEB2020:00:00:00.000000
它具有SAS日期和时间格式。SAS日期为06FEB2020,格式为DATE9.。
然后的示例代码是
use Lee\CarbonSasHelper; $sasDateFormat = 'DATE9.'; $sasDate = '06FEB2020'; $carbonSasHelper = CarbonSasHelper::createDateFromFormat($sasDateFormat, $sasDate); // Carbon class instance $carbonSasHelper->format('dMY:00:00:00.000000'); // '06Feb2020:00:00:00.000000'
特殊情况
某些SAS日期与Carbon日期不同。已知情况如下
use Lee\CarbonSasHelper; $sasDateFormat = 'DATE.'; $sasDate = '17MAR13'; $carbonSasHelper = CarbonSasHelper::createDateFromFormat($sasDateFormat, $sasDate); // Carbon class instance $carbonSasHelper->format('dMy'); // '17Mar13' $sasDateFormat = 'DATE9.'; $sasDate = '17MAR2013'; $carbonSasHelper = CarbonSasHelper::createDateFromFormat($sasDateFormat, $sasDate); // Carbon class instance $carbonSasHelper->format('dMY'); // '17Mar2013' $sasDateFormat = 'MONYY.'; $sasDate = 'MAR13'; $carbonSasHelper = CarbonSasHelper::createDateFromFormat($sasDateFormat, $sasDate); // Carbon class instance $carbonSasHelper->format('My'); // 'Mar13' $sasYearFormat = 'YYMON.'; $sasDate = '2013MAR'; $carbonSasHelper = CarbonSasHelper::createDateFromFormat($sasDateFormat, $sasDate); // Carbon class instance $carbonSasHelper->format('YM'); // '2013Mar'