2017-03-15 16 views
0
abstract class RepositoryBase 
{ 
    protected $connection;//This is PDO Object! 

    public function __construct(PDO $connection = null) 
    { 
     $this->connection = $connection; 
     if ($this->connection === null) { 
      $this->connection = new PDO(
       'mysql:host=localhost:3307;dbname=project', 
       'root', 
       'usbw' 
      ); 
      $this->connection->setAttribute(
       PDO::ATTR_ERRMODE, 
       PDO::ERRMODE_EXCEPTION 
      ); 
     } 
    } 

PDOセット名は< UTF8 - どのように私はそれが接続するたびにPDOアダプタをutf8に設定する方法

+0

あなたはhttp://php.net/manual/en/pdoにあなたの答えを見つけることができます.construct.phpおよびhttp://stackoverflow.com/questions/279170/utf-8-all-the-way-through –

答えて

-1

これを試してみて行うことができます。

$options = [ 
    PDO::MYSQL_ATTR_INIT_COMMAND => "SET NAMES 'UTF8'" 
]; 

$this->connection = new PDO(
    'mysql:host=localhost:3307;dbname=project', 
    'root', 
    'usbw', 
    $options 
); 

$this->connection->setAttribute(
    PDO::ATTR_ERRMODE, 
    PDO::ERRMODE_EXCEPTION 
); 
+0

http://stackoverflow.com/a/18496873/476を参照してください。 'setAttribute'呼び出しの構文は完全なナンセンスではありません。 – deceze

+0

パースエラー:I:\ Project \ root \ Repositories \ RepositoryBase.php(23行目)の構文エラー、予期しない '=>'(T_DOUBLE_ARROW)、 '、'または ')'を入力してください – Gakki

+0

申し訳ありません。このシナリオでは検証されません。 –

関連する問題