未分類

Twitter apiを使用してidをDB格納したらマイナスの数値になった

タイトルの件、最初何が原因か分かりませんでした。MySQLのデータ型が原因かと思って試行錯誤しましたが違いました。PHPのVersionのせいでした。下記のブログ記事に原因と思われる情報が載っています。古いversionのPHPだとint型の扱える桁数が小さいのが原因のようです。PHPのversionを調べたところ、5でしたので、7.4に変更しました。

めでたしめでたし、と思ってMySQLに格納されたデータを見ると治っていませんでした。なんでや。またいろいろ調べてみたところ、下記の記事に原因と思われる情報が載っています。

PHP 7.2以降におけるPDO::PARAM_INTの仕様変更

もうめんどくさいので、PDOに bindParam する前に整数データを文字列に変更してMySQLに格納することで解決ということにしました。データを取り出すときに整数に戻すという手間はあるけど、まぁいいやということで。

-未分類

© 2024 かつろぐ Powered by AFFINGER5