关于快速导出 Created_at 无法被覆写 该怎么解决


如代码 下面的signed_tm 是可以正常从时间戳转换为 时间格式

但是created_at 是字符串 打印时 也是 正常时间格式 转时间戳也正常 但是导出 不会变成时间戳
如图
请问 是什么原因

本作品采用《CC 协议》,转载必须注明作者和本文链接
《L03 构架 API 服务器》
你将学到如 RESTFul 设计风格、PostMan 的使用、OAuth 流程,JWT 概念及使用 和 API 开发相关的进阶知识。
《G01 Go 实战入门》
从零开始带你一步步开发一个 Go 博客项目,让你在最短的时间内学会使用 Go 进行编码。项目结构很大程度上参考了 Laravel。
讨论数量: 16
随波逐流

结果应该是时间戳了,但是 excel 自动格式化 成时间了

解决方案

created_at = "\t" . strtotime($row['created_at']); // 使用制表符, 就不会自动转换了
1年前 评论
1094968745 (楼主) 1年前
随波逐流 (作者) 1年前
public function getCreatedAtAttribute ($value)
    {
        return date('Y-m-d H:i:s', strtotime($value));
    }

把这个放到模型里去试试

1年前 评论
1094968745 (楼主) 1年前
隐德莱希 (作者) 1年前

全是下划线看着不难受吗 :scream:

1年前 评论
1094968745 (楼主) 1年前
我爱大可乐 1年前

实际上是时间戳,只是excel给你转了。可以手动设置行为text格式,就变为时间戳了。

1年前 评论

如何确定问题, 打印处理完成一次后的$row 看数据是否已更改成功, 或者点击导出后的值 如

file 查看上方的值和单元格里的值是否一致

1年前 评论

Carbon::parse(now())->toDateTimeString() 局部可以用这个方式处理下, 因为那个是UTC时间 或者在model 层做一下全局处理,不过针对resource 这种还是不起作用

1年前 评论

打多了s ? file

1年前 评论
raybon 1年前
DogLoML 1年前
1094968745 (楼主) 1年前

讨论应以学习和精进为目的。请勿发布不友善或者负能量的内容,与人为善,比聪明更重要!