无法将编码设置为pdf构造

时间:2017-01-02 15:08:01

标签: php pdo

我试图将UTF8编码设置为PDO构造,我现在所做的是:

public function __construct($dbType, $dbHost, $dbName, $dbUser, $dbPass, $charset)
{
    try
    {
        parent::__construct($dbType . ':host=' . $dbHost . ';dbname=' . $dbName, $dbUser,
            $dbPass. ';charset=' . $charset);
    }
    catch(PDOException $e)
    {
        $this->_error = $e->getMessage();
    }

    parent::setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
    parent::setAttribute(PDO::ATTR_PERSISTENT, true);
}

当达到setAttribute行时,我收到此错误:

  

PDO :: setAttribute():SQLSTATE [00000]:无错误:未调用PDO构造函数

我做错了什么?

1 个答案:

答案 0 :(得分:1)

您是否正在扩展PDO?当我想实现一个PDO对象时,我写下这个:

$pdoObj = new PDO(
            'mysql:dbname=' . DB_NAME .
            ';host=' . HOST_NAME . ";",
            USER,
            PWD,
            array(PDO::MYSQL_ATTR_INIT_COMMAND => "SET NAMES utf8")
        );