Php 空值被“”替换
如果$Time为null,那么在查询中它将被替换为。因此,查询不正确。如何避免这个问题Php 空值被“”替换,php,sql,datetime,Php,Sql,Datetime,如果$Time为null,那么在查询中它将被替换为。因此,查询不正确。如何避免这个问题 $Time = strtotime($arrivals[$i]["time"]); if ($Time != null) { $Time = strftime("%Y-%m-%d %H:%M:%S", $Time); } $query="INSERT INTO `Schedule` (`Time`) VALUES('".$Time."');"; 结果查询: INSERT INTO `schedule` (
$Time = strtotime($arrivals[$i]["time"]);
if ($Time != null)
{
$Time = strftime("%Y-%m-%d %H:%M:%S", $Time);
}
$query="INSERT INTO `Schedule` (`Time`) VALUES('".$Time."');";
结果查询:
INSERT INTO `schedule` (`Time`) VALUES('');
但应该是:
INSERT INTO `schedule` (`Time`) VALUES(null);
如果您希望在查询中使用NULL而不是'2013-…',显然需要做更多的工作
if ($Time === null) {
$Time = 'NULL';
} else {
$Time = strftime("'%Y-%m-%d %H:%M:%S'", $Time);
// ^ note the quotes ^
}
$query = "INSERT INTO `Schedule` (`Time`) VALUES ($Time);";
// note: no quotes ^ ^
试试这个:
$query="INSERT INTO `Schedule` (`Time`) VALUES('".($Time==''?'null':$Time)."');";
... else{用不存在的东西替换它?}如果它为空,你想要什么呢?@deceze:else{$Time=;}不起作用。应该是这样的:插入计划时间值ll;否则它就不起作用了。如果时间为NULL,那么会插入NULL值还是NULL字符串?因为我省略了NULL的引号,所以它是SQL NULL值,而不是字符串“NULL”。最后,一个实际有效的答案!