ポイント
- PDO をインスタンス化する際に、文字コードを指定する。
- PHP バージョンによって指定方法が異なることに注意
環境
- PHP 5.3.3 (cli) (built: Aug 11 2016 20:33:53)
- mysql Ver 14.14 Distrib 5.1.73, for redhat-linux-gnu (x86_64) using readline 5.1
実践
<?php
use \Phpmig\Adapter;
use Pimple\Container;
$container = new Container();
$container['db'] = function () {
$dbh = new PDO('mysql:dbname=phpmigdb;host=localhost;charset=utf8','phpmiguser','phpmigdbpassword',
array(
PDO::MYSQL_ATTR_READ_DEFAULT_FILE => 'SET NAMES utf8',
)
);
$dbh->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
return $dbh;
};
// replace this with a better Phpmig\Adapter\AdapterInterface
$container['phpmig.adapter'] = new Adapter\File\Flat(__DIR__ . DIRECTORY_SEPARATOR . 'migrations/.migrations.log');
$container['phpmig.migrations_path'] = __DIR__ . DIRECTORY_SEPARATOR . 'migrations';
// You can also provide an array of migration files
// $container['phpmig.migrations'] = array_merge(
// glob('migrations_1/*.php'),
// glob('migrations_2/*.php')
// );
return $container;
おわりに
次のページが非常に参考になりました。ありがとう存じます!
以上です。
