我有这种方法在数据库中保存日期:
(DROPDOWN)月(DROPDOWN)日(DROPDOWN)年
我有这种方法可以节省数据库的时间:
(TEXTBOX)时间(DROPDOWN)AM / PM
然后它会像这样保存在基座中:
+------------------+-----------+
| date | time |
+------------------+-----------+
| January 1, 2013 | 4:00 PM |
+------------------+-----------+
| January 6, 2013 | 9:00 AM |
+------------------+-----------+
如何使用if else语句将数据库中的日期与计算机时间进行比较?
if ("date/time in database" == "date/time in computer")
{
echo "something stuff.";
}
先谢谢。
答案 0 :(得分:0)
使用strtotime()
if (strtotime("January 1, 2013") == strtotime(date('F j, Y')))
{
echo "something stuff.";
}
文档链接:http://www.php.net/manual/en/function.strtotime.php
好运!
答案 1 :(得分:0)
在unix时间戳中转换日期,然后比较:
if (strtotime($your-db-stored-date) == strtotime($now)) {
//doSomething;
}
无论如何,请确保使用数据库中的相应类型保存日期...
答案 2 :(得分:0)
不是确切的答案,但它可以帮助你......我使用这些函数将日期时间作为UTC存储在数据库中,并在显示时转换为服务器时间。它解释了夏令时。
function convert_server_datetime_to_utc() {
return $gmdate = gmdate("Y-m-d H:i:s");
}
function convert_utc_to_server_datetime($utc=false) {
if (empty($utc)){return false;}
$date = new DateTime($utc);
$hours_offset = date("Z")/60/60;
if(substr($hours_offset, 0, 1) == "-") {
$hours_offset = substr($hours_offset, 1);
$invert=1;
}
$offset = new DateInterval('PT'.$hours_offset.'H');
if (!empty($invert)) {$offset->invert = 1;}
$date->add($offset);
return $date->format("Y-m-d H:i:s");
}
echo "convert_datetime_to_utc(): " . $d = convert_server_datetime_to_utc();
echo "<hr>convert_utc_to_datetime(): " . convert_utc_to_server_datetime($d);
答案 3 :(得分:0)
$date_from_db = "January 1, 2013 4:00 PM"; //just concatenate the date and time from db
if ($date_from_db == date('F j, Y h:i A')){
echo "write your code";
}
OR
if (strtotime($date_from_db) == strtotime(date('F j, Y h:i A'))){
echo "write your code";
}