PHP MySQL 插入中的日期格式差异
在尝试使用 PHP 将日期插入 MySQL 数据库时,用户可能会遇到以下错误:格式不匹配。流行的 jQuery 日期选择器格式“08/25/2012”与 MySQL 支持的日期格式冲突。
要解决此问题,必须了解 MySQL 的日期文字要求:
由于“08/25/2012”格式不符合这些规则,因此必须对其进行转换。有多种选项可供选择:
1。转换 jQuery Datepicker 格式
配置日期选择器以提供受支持格式的日期:
$( "selector" ).datepicker({ altField : "#actualDate" altFormat: "yyyy-mm-dd" });
或设置 dateFormat 选项:
$( "selector" ).datepicker({ dateFormat: "yyyy-mm-dd" });
2.使用 MySQL 的 STR_TO_DATE() 函数
插入时转换字符串:
INSERT INTO user_date VALUES ('', '$name', STR_TO_DATE('$date', '%m/%d/%Y'))
3.使用 PHP 的 DateTime 对象进行转换
获取合适的格式化字符串或 UNIX 时间戳:
$dt = \DateTime::createFromFormat('m/d/Y', $_POST['date']); $date = $dt->format('Y-m-d'); $timestamp = $dt->getTimestamp();
对于 UNIX 时间戳插入:
INSERT INTO user_date VALUES ('', '$name', FROM_UNIXTIME($timestamp))
4 。手动字符串操作
提取日期部分并以有效格式连接它们:
$parts = explode('/', $_POST['date']); $date = "$parts[2]-$parts[0]-$parts[1]";
注意:
以上是将日期从 PHP 插入 MySQL 时如何解决日期格式冲突?的详细内容。更多信息请关注PHP中文网其他相关文章!