我在PHP中试验了与MySQL的PDO连接。
$thismonth = date('Ym');
print ($thismonth);
= 201502
我想获取timestamp列(包含unix时间戳)等于上述字符串的所有行(在某种类型的动态转换之后),或者可能是另一种返回当前月的方式。
try {
$sql = $conn->prepare('SELECT id, domain, date FROM `domains` WHERE `date` = :thismonth ');
$sql->bindParam(':thismonth', $thismonth);
$sql->execute();
$results = $sql->fetchAll(PDO::FETCH_ASSOC);
$conn = null;
} catch (PDOException $e) {
print "\n" . "Error!: " . $e->getMessage() . "\n";
die();
}
var_dump($results);
我知道以上不会起作用。可能是可怕的错误。 可以:thismonth参数是一个即时比较?任何指向正确方向的援助都将受到赞赏。
答案 0 :(得分:1)
您需要查找MySQL日期/时间函数的文档并将其标记为因为它非常有用:
.... where MONTH(FROM_UNIXTIME(`date`)) = MONTH(NOW())
答案 1 :(得分:0)
您是否尝试过"WHERE date LIKE :thismonth . '%'"
?