Php 如何将varchar字符串db date转换为date/timstamp
我需要一个时间比较 我有一个带有Php 如何将varchar字符串db date转换为date/timstamp,php,mysql,date,Php,Mysql,Date,我需要一个时间比较 我有一个带有varchar字段的数据库字段,该字段包含列名date 我根据代码中的id.like获取了两个日期 现在我想将这些字符串转换成实际的日期/时间,以便比较它们 我正在尝试: $sql="SELECT date From tbl_info where id=12 "; //first date string $sql2="SELECT date From tbl_info where id=14 "; //2nd date string $r
varchar
字段的数据库字段,该字段包含列名date
我根据代码中的id.like
获取了两个日期
现在我想将这些字符串转换成实际的日期/时间,以便比较它们
我正在尝试:
$sql="SELECT date From tbl_info where id=12 "; //first date string
$sql2="SELECT date From tbl_info where id=14 "; //2nd date string
$result= mysql_query($sql) or die(msyql_error());
while($row = mysql_fetch_array($result, MYSQL_ASSOC))
{
$date=$row["date"]. "<br>";
echo $date ;
}
$result2= mysql_query($sql2) or die(msyql_error());
while($row2 = mysql_fetch_array($result2, MYSQL_ASSOC))
{
$date2=$row2["date"]. "<br>";
echo $date2;
}
$value=strtotime('H,i',$date);
echo "<br/>Value= :".$value ;
$value2=strtotime('H,i',$date2);
echo "<br/>Value2= :".$value2;
$sql=“从tbl\U信息中选择日期,其中id=12”//第一个日期字符串
$sql2=“从tbl\U信息中选择日期,其中id=14”//第二个日期字符串
$result=mysql_query($sql)或die(msyql_error());
而($row=mysql\u fetch\u array($result,mysql\u ASSOC))
{
$date=$row[“date”]。“
”;
echo$日期;
}
$result2=mysql_query($sql2)或die(msyql_error());
而($row2=mysql\u fetch\u数组($result2,mysql\u ASSOC))
{
$date2=$row2[“日期”]。“
”;
echo$date2;
}
$value=strottime('H,i',$date);
echo“
Value=:”$Value;
$value2=strotime('H,i',$date2);
echo“
Value2=:”$Value2;
结果:
值=:-48386
值2=:-48386
因为strotime不起作用,所以正确的实际方法是什么。试试
date('H,i', strtotime($date)); //$date will be the date you want to use
$value2=date('H,i', strtotime($date2));
不再支持
mysql.*
函数,它们不再维护,将来也会维护。您应该使用或更新您的代码,以确保将来项目的功能。当MySQL更适合Thanke@sgt时,为什么要在varchar中存储日期。但现在它给出了“18:00”这是什么?它不像这样,你想要哪种格式<代码>H表示00到23
。。您将获得所有格式-。请看一看。感谢您提供格式的链接。但我不明白为什么它会提供“:00”?你能详细说明你传递的变量是什么吗?在插入变量时,我使用$date=date('Y-m-dh:i:s');