ホームページ > バックエンド開発 > PHPチュートリアル > PDO が MySQL から数値ではなく文字列を返すのはなぜですか? それを修正するにはどうすればよいですか?

PDO が MySQL から数値ではなく文字列を返すのはなぜですか? それを修正するにはどうすればよいですか?

Susan Sarandon
リリース: 2024-12-31 14:35:09
オリジナル
326 人が閲覧しました

Why Does PDO Return Strings Instead of Numbers from MySQL, and How Can I Fix It?

PDO: MySQL 数値データの取得

PDO を使用して MySQL から整数値をフェッチする場合、実際の数値ではなく数値の文字列表現が発生するのが一般的です。数値データ。これを解決するには、PDO::ATTR_STRINGIFY_FETCHES 属性の使用を検討してください。ただし、この属性は MySQL ドライバーには適用できません。

代わりに、プリペアド ステートメント エミュレーションを無効にして、MySQL ネイティブ ドライバーがネイティブ データ型を返せるようにすることができます。これは、次の方法で実現できます。

new PDO($dsn, $user, $pass, array(
    PDO::ATTR_EMULATE_PREPARES => false
))
ログイン後にコピー

数値の文字列を受け取ることは珍しいように思えるかもしれませんが、MySQL ドライバーのデフォルトの動作により、一般的に発生します。準備されたステートメントのエミュレーションを変更することで、数値が期待どおりに取得されるようにすることができます。

以上がPDO が MySQL から数値ではなく文字列を返すのはなぜですか? それを修正するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート