cakeDC エラー – cakephp3

エラー

cakePHP3 + oracle(サードパーティのcakeDCを使用)

日本語のテーブル名が参照できない

原因

PHPとoracleの文字コードが異なる

対処

app.phpに文字コードを設定

            'flags' => ['charset' => 'AL32UTF8'],

OCI8Connection.phpを修正

    public function __construct($dsn, $username, $password, $options)
    {
        -- 省略 --
        // $option -> $optionsに変更
        $charset = !empty($options['charset']) ? $options['charset'] : null;

TableLocator.phpのgetメソッドを修正

    public function get($alias, array $options = [])
    -- 省略 --
//                list(, $table) = pluginSplit($options['className']);
//                $options['table'] = Inflector::underscore($table);
                $options['table'] = $alias;

コメント

タイトルとURLをコピーしました