ホームページ >バックエンド開発 >PHPチュートリアル >MySQL の数値列と整数列が PHP で正しいデータ型として返されることを確認するにはどうすればよいですか?
PHP クエリは、整数を扱う場合でも、多くの場合、すべての列を文字列として返します。または MySQL の数値。これは、複数のサービスで使用される JSON 出力など、特定の形式要件を持つデータを処理する場合に問題になる可能性があります。
一部の情報源では数値型を返すことは不可能であると主張していますが、これは問題です。完全に真実ではありません。次の誤解は無視してください:
この問題を解決する鍵は、PHP 用の mysqlnd ドライバーを使用することです。ネイティブ ドライバーとは異なり、mysqlnd は整数 (INTEGER、INT、SMALLINT、TINYINT、MEDIUMINT、BIGINT) および倍精度浮動小数点 (DOUBLE) 列の数値型を返すことをサポートしています。
mysqlnd を使用しているかどうかを確認するには、php を実行します。 -私。 pdo_mysql セクションに「mysqlnd」と記載されている場合、ドライバーは存在します。それ以外の場合は、次の手順に従ってインストールします:
Ubuntu:
存在を確認します: インストール後、php -i は pdo_mysql セクションに mysqlnd バージョンを表示するはずです。
さらに、次の PDO 設定が正しく設定されていることを確認してください:
mysqlnd と適切な PDO 設定を使用すると、MySQL テーブルにクエリを実行し、予期される形式で数値を取得できるようになります:
$result = $pdo->query('SELECT * FROM table'); $row = $result->fetch(PDO::FETCH_OBJ); echo $row->integer_col; // 1 (integer) echo $row->double_col; // 1.55 (float) echo $row->decimal_col; // '1.20' (string)
以上がMySQL の数値列と整数列が PHP で正しいデータ型として返されることを確認するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。