编程语言
首页 > 编程语言> > php – 如何在将日期传递给strtotime()之前使日期合法/安全?

php – 如何在将日期传递给strtotime()之前使日期合法/安全?

作者:互联网

这就是我现在拥有的.

$date = mysqli_real_escape_string($dbc, trim(date('Y-m-d',strtotime($_POST['date']))));

有人告诉我,在将它传递给strtotime()之前,我需要确保$date是安全/合法的.我怎么做?我抬头看了http://us3.php.net/strtotime,但它确实没有告诉我我在想什么.

有人可以用更详细的方式向我解释如何清洁提交到strtotime吗?

解决方法:

这远远超出你需要做的事情. strtotime()函数应该执行您需要的所有“验证” – 它将返回有效日期,或者不返回.之后,您不需要修剪或转义date()的输出 – 输出由您确定.这是我要做的:

$date = strtotime($_POST['date']);
if($date) {
    $date = date('Y-m-d', $date);
    //do stuff based on valid date
}
else {
    //handle invalid date. 
}

标签:strtotime,php,sanitization
来源: https://codeday.me/bug/20190726/1540353.html