使用 PHP 将 Javascript 时间转换为 MySQL 格式

2023-12-20

我怎样才能转换js日期(像这样Sun Jul 13 2014 07:00:00 GMT+0200 (EET))到 MySQL 格式(像这样2014-07-13 07:00:00)使用PHP?


由于您的日期字符串已经包含时区,因此您不需要执行任何特殊操作:

$when = new DateTime('Sun Jul 13 2014 07:00:00 GMT+0200 (EET)');
echo $when->format('Y-m-d H:i:s');

正如评论中所指出的,该字符串实际上包含两位时区信息,UTC + 2 and EET(东欧时间),而PHP基本上忽略了第二个。在这个例子中可以更好地发现它:

var_dump(new DateTime('Sun Jul 13 2014 07:00:00 GMT+0200 (EET)'), DateTime::getLastErrors());
var_dump(new DateTime('Sun Jul 13 2014 07:00:00 GMT+0200'), DateTime::getLastErrors());
var_dump(new DateTime('Sun Jul 13 2014 07:00:00 (EET)'), DateTime::getLastErrors());
object(DateTime)#1 (3) {
  ["date"]=>
  string(26) "2014-07-13 07:00:00.000000"
  ["timezone_type"]=>
  int(1)
  ["timezone"]=>
  string(6) "+02:00"
}
array(4) {
  ["warning_count"]=>
  int(1)
  ["warnings"]=>
  array(1) {
    [34]=>
    string(29) "Double timezone specification"
  }
  ["error_count"]=>
  int(0)
  ["errors"]=>
  array(0) {
  }
}
object(DateTime)#1 (3) {
  ["date"]=>
  string(26) "2014-07-13 07:00:00.000000"
  ["timezone_type"]=>
  int(1)
  ["timezone"]=>
  string(6) "+02:00"
}
array(4) {
  ["warning_count"]=>
  int(0)
  ["warnings"]=>
  array(0) {
  }
  ["error_count"]=>
  int(0)
  ["errors"]=>
  array(0) {
  }
}
object(DateTime)#1 (3) {
  ["date"]=>
  string(26) "2014-07-13 07:00:00.000000"
  ["timezone_type"]=>
  int(2)
  ["timezone"]=>
  string(3) "EET"
}
array(4) {
  ["warning_count"]=>
  int(0)
  ["warnings"]=>
  array(0) {
  }
  ["error_count"]=>
  int(0)
  ["errors"]=>
  array(0) {
  }
}

事实上我们需要删除其中之一,例如:

$js_date_string = 'Sun Jul 13 2014 07:00:00 GMT+0200 (EET)';
// Regular expression is shown for illustration purposes, it's probably wrong!
$tmp_date_string = preg_replace('/ GMT\+\d{4}/ui', '', $js_date_string);

$when = new DateTime($tmp_date_string);
var_dump($when, DateTime::getLastErrors());
echo $when->format('Y-m-d H:i:s');
object(DateTime)#1 (3) {
  ["date"]=>
  string(26) "2014-07-13 07:00:00.000000"
  ["timezone_type"]=>
  int(2)
  ["timezone"]=>
  string(3) "EET"
}
array(4) {
  ["warning_count"]=>
  int(0)
  ["warnings"]=>
  array(0) {
  }
  ["error_count"]=>
  int(0)
  ["errors"]=>
  array(0) {
  }
}
2014-07-13 07:00:00
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

使用 PHP 将 Javascript 时间转换为 MySQL 格式 的相关文章

  • 如何使用更新资源控制器 laravel 4?

    我有带有索引 编辑 更新方法的客户控制器 Route resource customer CustomerController 控制器方法更新 public function update id echo id 我的 HTML 表单
  • 我可以使用 HSQLDB 进行 junit 测试克隆 mySQL 数据库吗

    我正在开发一个 spring webflow 项目 我想我可以使用 HSQLDB 而不是 mysql 进行 junit 测试吗 如何将我的 mysql 数据库克隆到 HSQLDB 如果您使用 spring 3 1 或更高版本 您可以使用 s
  • PHP 接口有属性吗?

    PHP 中的接口有属性 还是只有方法 您可以在 DocBlock 中为接口声明属性 然后 IDE 将提示接口的这些属性 PhpStorm 会这样做 但这不会强制在实现类中实际实现这些字段 例如 property string passwor
  • SQL不允许表中有重复记录

    如何使其不添加重复项 我想让它通过 ID 之外的所有其他列进行检查 我希望这个无效 ID col1 col2 col3 1 first middle last ID col1 col2 col3 2 first middle last 我希
  • Javascript split 不是一个函数

    嘿朋友们 我正在使用 javascript sdk 通过 jQuery facebook 多朋友选择器在用户朋友墙上发布信息 但是我收到此错误friendId split 不是函数 这是我的代码 function recommendToFr
  • DataTables row.add 到特定索引

    我正在替换这样的行项目 var targetRow entity row dataTable targetRow closest table dataTable DataTable dataTable row targetRow remov
  • PHP session_regenerate_id 和黑莓浏览器

    问候 我正在开发一个登录系统 并陷入了黑莓浏览器身份验证的困境 他们似乎对 PHP 的 session regenerate id 有问题 有人可以建议替代方案吗 以下是身份验证和登录脚本 UPDATE看来会话一般都不起作用 拿出 sess
  • PHP 拒绝从 var_dump、print 等输出数据

    我目前正在运行 WAMP 服务器 并且在过去的 30 分钟内一直在尝试弄清楚我的项目如何以及为什么不会输出任何指定的 PHP 数据 起初我以为是因为我有一个 htaccess文件的output buffering被禁用 所以我删除了它 仍然
  • Laravel 搜索关系

    我有两个相关的模型 我正在尝试在产品中进行搜索 并且仅显示实际搜索结果 而不是找到该产品的类别的所有产品 我不想搜索任何类别 因为无论搜索什么或找到什么 类别都会始终显示 Example I have the following categ
  • 矩形超出边界是什么意思

    PPB Graphics2D PaintImageData 矩形超出界限是什么意思 我几乎在我检查的每一段代码中都看到了它 最新的代码是 define my consumer key define my consumer secret oa
  • PayPal 网关已拒绝请求。安全标头无效(#10002:安全错误 Magento

    在 magento 中增加 PayPal 预付款 我已填写 magento admin 中的所有凭据 但是当我进入前端并单击 pay pal 按钮时 它给出了 PayPal 网关已拒绝请求 安全标头无效 10002 安全错误 我用谷歌搜索了
  • 通过 htaccess 将 PNG 解析为 PHP 仅适用于本地服务器,但不适用于网络服务器

    我用 PHP 创建了一个动态 PNG 图片 为了使用 PNG 扩展名 我创建了一个包含以下内容的 htaccess 文件 AddType application x httpd php png 在我的本地 XAMPP 服务器上 一切工作正常
  • 如何用另一个响应替换窗口的 URL 哈希?

    我正在尝试使用替换方法更改哈希 URL document location hash 但它不起作用 function var anchor document location hash this returns me a string va
  • Javascript Replace() 和 $1 问题

    我正在尝试创建一个脚本来搜索文本中的模式并在它找到的字符串周围包裹一个标签 shop attributes td each function this html function i html return html replace E 0
  • 如何修改现有表以添加时区

    我有一个包含 500 多个表的大型应用程序 我必须将应用程序转换为时区感知 当前应用程序使用new java util Date GETDATE 与服务器的时区 即没有任何时区支持 我已将这项任务分为几个步骤 以便于开发 我确定的第一个步骤
  • PHP更改小数点分隔符

    在某些情况下 PHP 会在操作后更改小数点分隔符 下面是一个示例 为什么小数点分隔符变成 这是一个多语言网站 在西班牙语版本中 区域设置设置为西班牙语 es ES 小数点分隔符为 这就是为什么正在改变 解决方案是强制 LC NUMERIC
  • 使用 MongoDB 和 Nodejs 插入和查询日期

    我需要一些帮助在 mongodb 和 nodejs 中按日期查找记录 我将日期添加到抓取脚本中的 json 对象 如下所示 jsonObj last updated new Date 该对象被插入到 mongodb 中 我可以看到如下 la
  • 如何从日期中查找该月的最后一天?

    如何在 PHP 中获取该月的最后一天 Given a date 2009 11 23 我要2009 11 30 并给出 a date 2009 12 23 我要2009年12月31日 t返回给定日期所在月份的天数 请参阅的文档date ht
  • 如何使用asm.js进行测试和开发?

    最近我读到asm js规范 看起来很酷 但是是否有任何环境 工具来开发和测试这个工具 这还只是处于规范阶段吗 您可以尝试使用 emscripten 和 ASM JS 1 并从侧分支在 firefox 构建中运行它 有关 asm js 的链接
  • Vue.js[vuex] 如何从突变中调度?

    我有一个要应用于 json 对象的过滤器列表 我的突变看起来像这样 const mutations setStars state payload state stars payload this dispatch filter setRev

随机推荐

  • 如何在 macOS 应用程序中使用 Swift 监听全局热键?

    我试图在我的 Mac OS X 应用程序中使用 Swift 编写一个处理程序 用于全局 系统范围 热键组合 但我找不到合适的文档 我读过 我必须在一些遗留的 Carbon API 中搞乱它 有没有更好的方法 您能给我展示一些概念验证 Swi
  • Python记录器格式化不是格式化字符串

    以下为内容mylogger py def get logger name my super logger log logging getLogger name log setLevel logging DEBUG formatter log
  • 需要澄清 Swift 中的类型转换运算符

    为什么在此 switch 语句中使用类型转换运算符 as 而不是其条件形式 as 我认为类型运算符只能是 as 或 as Apple Swift 文档没有对此提供足够的解释 这是 Swift 文档中的示例 var things Any th
  • 包含 Typescript 中类型值的所有选项的数组

    这是强制所有类型选项出现在键中的代码object 并且不允许使用其他键 type Fruit apple peach const objectWithAllFruitsAsKeys key in Fruit any apple peach
  • 用于从 C++ 代码生成 UML 图的 Eclipse 插件

    有没有可以从 C 源代码生成 UML 类图的 eclipse 插件 这也不是 Eclipse 插件 而是Umbrello UML 建模器 http uml sourceforge net index php来自 KDE 的软件是开源的 我使
  • jQuery 缓存 $(this) 有意义吗?

    我仍在学习 jQuery 但我还没有找到可靠的答案 我知道你每次使用 jQuery 选择器时 有性能成本 但确实 this 在大量使用之前应该缓存它会产生很大的成本吗 var this this 如果你经常使用它 是的 它是有意义的 或者是
  • 无法从 PKCS8 获取私钥

    无法从自行生成的 PKCS8 获取私钥 我已经生成了私钥 KeyPair pair getKeyPair StringWriter privateWriter new StringWriter try JcaPEMWriter w new
  • QTextDocument:获取特定页面的内容

    Given a QTextDocument具有特定的宽度和高度 有没有办法在给定页码的情况下获取给定页面的内容 如果页面上有图像 则为纯文本 图像 URL 这是我想要实现的目标的示例 QString getTextForPage int p
  • Android Gradle 5.0 更新:原因:org.jetbrains.plugins.gradle.tooling.util

    关于更新我的项目版本gradle到 5 0 版本时 我在 android studio 中遇到错误 它运行良好gradle 5 0 rc 3 and 4发布 以下是错误详细信息 原因 org jetbrains plugins gradle
  • 寻找一种在 PropertyGrid 中动态更改字段名称的方法

    我已将 COM 对象附加到属性网格 Type typeObj Type GetTypeFromProgID progIdService var obj Activator CreateInstance typeObj propertyGri
  • 如何在 Vuetify 中添加新节点

    我目前正在使用 Vuetify 制作树视图 树视图使用以下结构 items id 1 name Applications children id 2 name Calendar app id 3 name Chrome app id 4 n
  • 如何在 Linux 中分析 pthread 互斥体?

    我想知道如何分析 pthread 互斥体以查看我的代码中是否存在任何锁定争用点 谁喜欢有争议的代码 对吧 正如我提到的 我知道如何对代码进行更一般的分析here https stackoverflow com a 10800412 1158
  • 将数字转换为单词 C# [重复]

    这个问题在这里已经有答案了 可能的重复 如何将整数转换为其语言表示形式 https stackoverflow com questions 554314 how can i convert an integer into its verba
  • 如何在角度材料中启用和禁用滑动切换

    我已经使用 for 循环生成了垫子滑动切换列表 但想要的是 当我单击一个滑动切换时 其他滑动切换应该被禁用 my code HTML div class row div class col md 6 mt 2 div div
  • Wpf 数据网格问题

    要重现此问题 请添加用户控件 粘贴下面的 xaml 然后将实例添加到窗口 最后将窗口的数据上下文设置为 ADummyDataContext 的实例 也在下面 当您第一次运行该应用程序时 您应该得到一个包含三个类别的网格 每个类别包含一只猫
  • 以静态大小的数组作为参数的通用 lambda

    以下通用 多态 lambda 是否合法 C 14 auto f auto x 3 x 0 x 1 etc GCC 和 Clang 4 接受该代码 但 Visual Studio 2017 不接受 合法吗 error C3318 auto 3
  • 反应本机文本颜色不起作用

    我有一个Text里面的组件TouchableOpacity我想改变颜色取决于变量 这是我的代码 import React Component from react import StyleSheet Text View TouchableO
  • CUDA 小内核 2d 卷积 - 如何做

    我已经用 CUDA 内核试验了几天 在 500x500 图像 但我也可以改变尺寸 和非常小的 2D 内核 拉普拉斯 2d 内核 所以它是 3x3 内核 太小 之间执行快速 2D 卷积以利用所有 cuda 线程的巨大优势 我创建了一个 CPU
  • 使用 val() 设置输入值时会触发什么 jquery 事件?

    我可以设置这个监听器 input type text on keyup paste input change function console log Hello 如果我打开DevTools and do input type text v
  • 使用 PHP 将 Javascript 时间转换为 MySQL 格式

    我怎样才能转换js日期 像这样Sun Jul 13 2014 07 00 00 GMT 0200 EET 到 MySQL 格式 像这样2014 07 13 07 00 00 使用PHP 由于您的日期字符串已经包含时区 因此您不需要执行任何特