从 SQL 获取错误的日期时间格式

发布于 2025-01-02 19:03:49 字数 626 浏览 0 评论 0原文

我有两台带有 IIS、PHP 和 MSSQL 的 Windows 2008 服务器。

在 PHP 脚本中,我查询一个包含“datetime”类型字段的表:

SELECT timestamp FROM table

现在的问题是,在一台服务器上我得到以下格式:

2012-02-05 12:32:54.020

但在另一台服务器上我得到这个(我不想要):

2012 年 2 月 5 日 12:32PM

通过 SQL Server Management Studio 查询时,我在两台服务器上都得到了“正确”(2012-02-05 12:32:54.020) 值。

我的问题是: 如何在 PHP 中禁用此转换,以便返回的格式始终采用以下格式:2012-02-05 12:32:54.020?

编辑:我知道我可以更改脚本来格式化日期,但我不想浏览 10000 多个文件。是什么导致了这种转变?是 PHP、SQL 还是 IIS?它在旧服务器上运行,所以我认为它可以在新服务器上运行。

I have two Windows 2008 servers with IIS, PHP and MSSQL.

In a PHP-script, I query a table with a field of type 'datetime':

SELECT timestamp FROM table

Now the problem is, that on one server I get this format:

2012-02-05 12:32:54.020

But on the other server I get this (which I don´t want):

Feb 5 2012 12:32PM

When querying through SQL Server Management Studio I get the 'correct' (2012-02-05 12:32:54.020) value on both servers.

My question is:
How do I disable this conversion in PHP so that the format returned is always in this format: 2012-02-05 12:32:54.020?

Edit: I know that I could change the script to format the date, but I don't want to go through 10000+ files. What is causing this conversion? Is it PHP, SQL or IIS? It is working on the old server, so I assume it could work on the new server.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

娇妻 2025-01-09 19:03:49

在 PHP 中,您可以使用 date_format

$correctDate = date_format($dateToFormat, "Y-m-d H:i:s");

In PHP, you can format the date with date_format like this:

$correctDate = date_format($dateToFormat, "Y-m-d H:i:s");
浅黛梨妆こ 2025-01-09 19:03:49

您可以在服务器端对其进行格式化:

SELECT CONVERT(varchar, timestamp, 121) FROM table

You may format it on server side:

SELECT CONVERT(varchar, timestamp, 121) FROM table
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文