我有一个保存工作的数据库。它包含工作名称和到期日期。我的数据库是 user_job(id,user_id,job_name,日,月,年)。用于在数据库中插入作业的到期日期的表单包括3个下拉列表。一个用户选择日(值1-31)然后是月(值jan到dec)和年(2014到2024)。我使用以下函数来获取服务器的日期:
<?php
$server_date = date('Y-m-d');
$a = mysql_query("select * from `user_job` where `user_id`='$session_user_id' ");
while($run_job = mysql_fetch_array($a)){
$the_job_day = $run_job['day'];
$the_job_month = $run_job['month'];
$the_job_year = $run_job['year'];
}
?>
我的问题是,现在是否有可能将服务器的日期与我的数据库中作业的到期日期进行比较。如果过期日期已经过去,只是为了回复消息,&#34;已过期&#34;。有可能这样做吗?
答案 0 :(得分:2)
$the_job_time = strtotime($the_job_year .'-'. $the_job_month .'-'. $the_job_day);
$current_time = time();
if ($current_time > $the_job_time) {
// the job have expired
}
但我建议将时间以不同方式存储在数据库中。您可以使用许多不同的日期/时间类型
答案 1 :(得分:0)
按照有效性的顺序,有多种方法可以做到:
date
列,然后使用select语句与NOW()
进行比较DateTime
类PHP来使用DateTime::diff()
方法(参见the documentation)