使用 MySQLi 设置连接字符串的字符集[关闭]

问题描述 投票:0回答:1

尝试找出如何使用 mysqli 设置字符集,感谢任何帮助。

这是我的连接代码:

class DB {
    
    var $conn;
    function __construct($servername, $username, $password, $dbname, $dbport = 3306) {
        $this->conn = new mysqli($servername, $username, $password, $dbname, $dbport );  
    }
 
    public function query($sql) {
        return $this->conn->query($sql);
    }

    public function clean($data) {
        return $this->conn->real_escape_string($data);
    }   
 
}

    define("db_host","localhost");
    define("db_user","my_username");
    define("db_pass","my_password");
    define("db_name","my_db_name");
    define("db",new DB(db_host, db_user, db_pass, db_name));

问题:

如何使用此代码设置字符集(大概使用 mysqli_set_charset)?

我想我可以添加这个:

mysqli_set_charset($this,"utf8");

...在 DB 类中以“$this->conn”开头的行下,但显然它并不那么简单。帮忙?!

php mysql mysqli
1个回答
1
投票

您获得了正确的函数,但请注意它的参数是 mysqli 类的实例,而不是您的类的实例。

所以你尝试过的代码:

mysqli_set_charset($this,"utf8");

应该是:

mysqli_set_charset($this->conn,"utf8mb4");

我建议使用utf8mb4,而不是utf8。

© www.soinside.com 2019 - 2024. All rights reserved.