时间戳列中的WordPress Insert Now()返回全零 时间:2014-07-20 作者:Ollicca Mindstorm 我想在我的列的TIMESTAMP列中插入一个时间戳,但我总是得到全零。这是我的插页:$now = \'NOW()\'; // insert the date into the db $wpdb->insert( \'wp_date\', array( \'name\' => $name, \'date\' => $now ), array( \'%s\', \'%s\' ) ); // end insert 2 个回复 最合适的回答,由SO网友:Rarst 整理而成 我没有尝试复制它,但可能的原因是您希望在查询中使用的是SQL函数(NOW()) 但是您“告诉”WordPress要使用的是字符串。声明其格式为%s 意味着它被消毒并加上引号\'NOW()\' MySQL可能将其视为非常无效的时间戳。您必须为此生成原始SQL查询(不使用insert helper),或者在PHP端生成并提供时间戳字符串。 SO网友:MaximOrlovsky 您不能使用\'NOW()\' 在里面$wpbd->insert 设置当前时间戳。我建议使用WP内置功能current_time(). 第一个参数应为\'mysql\' (获取MySQL兼容字符串)。第二个指定要在哪个时区接收结果:false 是您的服务器本地时间,true 是GMT。所以,您需要的代码是:$now = current_time(\'mysql\', false); 的输出$now 将是服务器本地时间中的时间,例如:2014-07-20 18:46:23. 了解更多信息current_time() -- http://codex.wordpress.org/Function_Reference/current_time 结束 文章导航