php - PHP日期格式化问题与周数
问题描述
我正在为我的前端提供每周报告。我正在接收日期间隔并返回按W-Y
格式分块的数据(例如 02-2018)。例如,当我将 31.12.2018 作为间隔的开始日期时,就会出现问题。当我用W-Y
模式格式化该日期时,结果是 01-2018,因为 31.12.2018 作为工作日“属于”2019 年,所以周数格式化程序给我 01,但作为一年得到 2018,这也是正确的。但是有一个问题,因为我的块必须是连续的,但现在我的数据看起来像这样:
{
"01-2018": [...],
"02-2019": [...],
"03-2019": [...],
.....
}
有什么建议如何设计所有这些吗?
解决方案
o
当您使用 ISO 周数时,您需要使用年份格式。从手册:
o:ISO-8601 年编号。这与 Y 具有相同的值,除了如果 ISO 周数 (W) 属于上一年或下一年,则使用那一年。(在 PHP 5.1.0 中添加)
echo (new DateTime('2018-12-31'))->format('W-o');
输出:
01-2019
推荐阅读
- javascript - 创建动态html表
- laravel - 在带有 Apache 服务器的 Laravel 应用程序中使用漂亮的 URL(没有 index.php)
- php - ftp_put 写在主目录之外
- c# - 为什么我必须在 C# 中包含两次相同的 dll?
- c# - 错误 CS0116 - 字符串转储和搜索项目
- r - 在r中调用函数时的编码问题
- firebase - 从地图数组中的地图中提取字段
- vue.js - 更改 Materializecss 选择文本颜色
- windows - 将具有多个项目和 svn 外部的 SVN 存储库迁移到 git
- flutter - 在 WebView 上捕获 onTap