我正在玩wordpress $wpdb
功能。
首先,我想创建一个数据库表,其中包含与时间对应的列,以便我可以将用户操作保存到此表中,并知道他们何时执行此操作。
创建表格:
$sql = "CREATE TABLE IF NOT EXISTS $table_name (
id INT NOT NULL AUTO_INCREMENT,
actiontime NOT NULL DATETIME,
PRIMARY KEY (id)
) $charset_collSate;";
require_once( ABSPATH . 'wp-admin/includes/upgrade.php' );
// execute the query
dbDelta( $sql );
这是对的吗?它会创建我追求的DATETIME字段吗?我想要一个时间戳,以便我可以在每分钟/秒间隔内获得差异。
插入此表:
$wpdb->insert($table_name, array(
'actiontime' => now()
));
这会有用吗?
我无法手动检查,因为我正在侧面机器上进行开发,只有ftp访问live-server和notepad。我不能在当地测试任何东西。
答案 0 :(得分:1)
您可以考虑一些选项,
如果您使用普通的旧PHP和MySQL,可以使用SQL now()
函数将数据插入到这样的时间戳字段中,
INSERT INTO projects (actiontime) VALUES (now())
另一个选择是使用PHP变量,例如$timestamp = date('Y-m-d G:i:s');
并将其插入SQL查询中:
$timestamp = date('Y-m-d G:i:s');
INSERT INTO projects (actiontime) VALUES ($timestamp);
希望它有所帮助!
答案 1 :(得分:1)
我使用这个php函数来获取MySQL DATETIME字段的当前值。
/**
* Return current date time.
*
* @return string ISO date time (Y-m-d H:i:s)
*/
function now()
{
return date('Y-m-d H:i:s');
}
答案 2 :(得分:-1)
尝试PHP time()获取纪元时间戳