プログラミングメカブログ

Adults cling to the past, Children want to escape to the future

プログラミングメカブログ

Adults cling to the past, Children want to escape to the future

11月

16

mysqlndモジュールが効かない時のTIPS

  • POSTED BY 小谷松 丈樹 IN 未分類
  • 1 Comment

mysqlndが有効にならない?

PHP5.5以降から、php-mysqlをyumインストールすると、
php-mysqlnd も一緒にインストールされます。

mysqlndが入っていると、DBからデータを取り出した際に、
int型で定義されているカラムのデータはintとして、
string型で定義されているカラムのデータはstringとして取り出すことができます。

今回、PHP5.6の環境で、mysqlndがインストールされていて、
モジュールが有効になっていることを確認できました。
下記の通り、DBからフェッチした値をvar_dump()したところ、
intで定義しているカラムがstringで出力されてしまいました。

案件によっては、intで定義しているものはintで出力したい
という場合も

まず確認すること

本当にmysqlnd入ってる?

本当にmysqlnd有効になってる?

じゃあ何が悪いか

実装です。(キリッ
PDO接続時のオプション ATTR_EMULATE_PREPARES をオフにする必要がありました。

これで先ほどのvar_dump()を出力してみると…

ちゃんとintになって出力されました。

Comment ( 1 )

コメントを残す

Please type the characters of this captcha image in the input box

Please type the characters of this captcha image in the input box