LoginSignup
1
0

More than 3 years have passed since last update.

phalcon 3.4 でMySQL(MariaDB)を使うときのTips

Posted at

phalconでMySqlを使う場合、
だけではないと思うけど、Laravelでも同じ現象が報告されている

🚨Laravel 絵文字が通らない問題

SQLSTATE[22007]: Invalid datetime format: 1366 Incorrect string value: '\xF0\x9F\x94\xB5\xE3\x81...'

勝手にDatetimeって判定してる。。。

可能性としては、phalconでもLaravelでもPHPなんで、mysql or mariadbのClientあたりの設定?
と思って調べてみても、my.cnfは、サーバー側、クライアント側共にutf8mb4が指定されている。

エラーメッセージで一瞬混乱してしまって、テーブル定義を疑ってしまうかもしれないのでしっかりとメモを残しておく。
これは絵文字入れたときにutf8に入ってないのでダメですよってことです。
utf8mb4これを指定してあげればOK

一部抜粋。

return new \Phalcon\Config([
    'database' => [
        'adapter' => 'Mysql',
        'charset' => 'utf8mb4',
    ],

しかし、これまでutf8でも絵文字が通ってたんだけどな。

設定からすると、これまではPHP7.2だったのを7.3にしたからかな。厳密にチェックするようになったのかな。
しかし、誤作動というか間違ったエラーメッセージは困りますな。

1
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
0