gpt4 book ai didi

php - MYSQL在PHP代码中设置时区

转载 作者:可可西里 更新时间:2023-11-01 06:39:47 24 4
gpt4 key购买 nike

如何像 PHP 中的这个函数一样将 MYSQL TIMEZONE 更改为 GMT 格式:/设置 GMT 时区/date_default_timezone_set('等/GMT');

我的数据库类在这里:

class DB {
private static $instance;
private $MySQLi;

private function __construct(array $dbOptions){

$this->MySQLi = @ new mysqli( $dbOptions['db_host'],
$dbOptions['db_user'],
$dbOptions['db_pass'],
$dbOptions['db_name'] );

if (mysqli_connect_errno()) {
throw new Exception('Database error.');
}

$this->MySQLi->set_charset("utf8");
}

public static function init(array $dbOptions){
if(self::$instance instanceof self){
return false;
}

self::$instance = new self($dbOptions);
}

public static function getMySQLiObject(){
return self::$instance->MySQLi;
}

public static function query($q){
return self::$instance->MySQLi->query($q);
}

public static function prepare($q){
return self::$instance->MySQLi->prepare($q);
}

public static function esc($str){
return self::$instance->MySQLi->real_escape_string(htmlspecialchars($str));
}

}

我在其他文件中的查询也是这样的:

DB::query('UPDATE `calendar_data` SET `data` = "'.DB::esc(json_encode($array)).'", `upcoming_time` = "'.date('Y-m-d H:i:s', $upcoming).'", `time_now` = NOW() WHERE `id` = "1"');

我应该在哪里将我的查询插入到类中以运行一次?

谢谢!

$this->MySQLi->set_charset("utf8");
$this->MySQLi->query("SET timezone = 'GMT'");
  • >不起作用。如果我使用 NOW(),则会插入服务器时间 (GMT-4)。哪里出了问题???

最佳答案

尝试以下操作:

$this->MySQLi->query("SET time_zone = '+0:00'");

仅当已创建并填充 MySQL 数据库中的时区信息表时,使用命名时区才有效。

关于php - MYSQL在PHP代码中设置时区,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12296780/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com