“转换PHP变量”;上午11:00“;转换为MySQL时间格式
正在尝试将标准时间变量从表单输入转换为MySQL INSERT可接受的时间格式。我可能完全搞错了,需要一些帮助。我已经阅读了MySQL时间函数和PHP时间函数,但还没有找到解决方案 以下是我尝试过的示例:“转换PHP变量”;上午11:00“;转换为MySQL时间格式,php,mysql,time,Php,Mysql,Time,正在尝试将标准时间变量从表单输入转换为MySQL INSERT可接受的时间格式。我可能完全搞错了,需要一些帮助。我已经阅读了MySQL时间函数和PHP时间函数,但还没有找到解决方案 以下是我尝试过的示例: <?php $time_input = '11:00 AM'; $strtotime = strtotime($time_input); $mysql_time = date('H:m:s',$strtotime); echo "<p>time_input: $time
<?php
$time_input = '11:00 AM';
$strtotime = strtotime($time_input);
$mysql_time = date('H:m:s',$strtotime);
echo "<p>time_input: $time_input</p>";
echo "<p>strtotime: $strtotime</p>";
echo "<p>mysql_time: $mysql_time</p>";
?>
非常感谢您的帮助 将为您执行以下操作:
$time_input = '11:00 AM';
$date = DateTime::createFromFormat( 'H:i A', $time_input);
$formatted = $date->format( 'H:i:s');
我通常在可能的情况下避免使用strotime(),因为它可能有些不可预测
您可以在中看到它的工作状态。
m
是带前导零的月份(8月,即08年)的格式,您需要i
(带前导零的分钟):
8是因为现在是8月:8月。感谢您推荐使用DateTime!我要试一试。
$time_input = '11:00 AM';
$date = DateTime::createFromFormat( 'H:i A', $time_input);
$formatted = $date->format( 'H:i:s');
$mysql_time = date('H:i:s',$strtotime);