这行PHP代码如何工作?

时间:2016-02-26 14:07:26

标签: php email

它是如何运作的?

// Purge obsolete login attempts
    $this->db->or_where('UNIX_TIMESTAMP(time) <', time() - $expire_period);

$ this-&gt; db-&gt; or_where是codeigniter方法,两者都是&#39; UNIX_TIMESTAMP&#39;和time()返回时间戳,我无法弄清楚为什么&#39; UNIX_TIMESTAMP&#39;将少于第二个论点。

2 个答案:

答案 0 :(得分:1)

time是数据库中的一个字段(很可能是一个日期时间字段),由您的数据库转换为Unix时间戳格式。所以在理论上它等同于写这个:

$this->db->or_where('time <', date('Y-m-d H:i:s', (time() - $expire_period)));

答案 1 :(得分:0)

我对Codeigniter框架一无所知。但是# First condition: Only match host example.com with or without www. RewriteCond %{HTTP_HOST} ^(www.)?example.com$ # Second condition: Only match if Request URI is / RewriteCond %{REQUEST_URI} ^/$ # If both conditions match, redirect to http://www.example.com/en/ (Status code 301) RewriteRule (.*) http://www.example.com/en/ [R=301,L] 部分是一个SQL函数,用于获取或解析日期作为Unix时间戳。您可以在MySQL Date and Time Function文档中查看它。

因此UNIX_TIMESTAMP()实际上是在表上获取UNIX_TIMESTAMP(time)列并将其解析为Unix时间戳。

总之,上面的代码将获取time列小于当前time的所有行。