從MySQL 返回整數和數字作為PHP 類型
儘管將PDO::ATTR_STRINGIFY_FETCH的問題仍然以字串形式返回,而不是整數或數字。此行為通常歸因於驅動程式實作問題。
mysqlnd 差異
解決此問題的關鍵在於確保您使用 mysqlnd PHP 驅動程式。查看 php -i 時,pdo_mysql 部分中缺少「mysqlnd」表示正在使用本機驅動程式。
安裝 mysqlnd
在 Ubuntu 上,安裝php5-mysqlnd 而不是 php5-mysql。為了確保成功過渡,請按照以下步驟操作:
驗證 mysqlnd
安裝 php5-mysqlnd 後,php -i 現在應該在 pdo_mysql 部分明確提及“mysqlnd”。
PDO 設定
設定下列PDO 屬性以確保正確的資料處理:
使用正確的驅動程式和設置,數字列將作為適當的PHP 類型傳回:
浮點類型(FLOAT、DOUBLE):PHP float以上是為什麼我的 PHP MySQL 數字列結果有時是字串而不是整數或浮點數?的詳細內容。更多資訊請關注PHP中文網其他相關文章!