1. 程式人生 > >PDO 查詢mysql返回欄位整型變為String型解決方法

PDO 查詢mysql返回欄位整型變為String型解決方法

版權宣告:本文為博主原創文章,未經博主允許不得轉載。如需轉載可私信或關注公眾號fdipzone-idea與我聯絡。 https://blog.csdn.net/fdipzone/article/details/46702965
PDO 查詢mysql返回欄位整型變為String型解決方法

使用PDO查詢mysql資料庫時,執行prepare,execute後,返回的欄位資料全都變為字元型。

例如id在資料庫中是Int的,查詢後返回是String型。

對於php這種弱型別的語言,影響不大。在做API返回資料時,如果型別與資料庫不一致,對於java和Objective C這些強型別,影響就很大了。

解決方法:

<?php
$pdo = new PDO($dsn, $user, $pass, $param);

// 在建立連線後,加入
$pdo->setAttribute(PDO::ATTR_STRINGIFY_FETCHES, false);
$pdo->setAttribute(PDO::ATTR_EMULATE_PREPARES, false);
?>
這兩句設定的作用 
PDO::ATTR_STRINGIFY_FETCHES 提取的時候將數值轉換為字串。 
PDO::ATTR_EMULATE_PREPARES 啟用或禁用預處理語句的模擬。

更多PDO setAttribute可參考:http://php.net/manual/zh/pdo.setattribute.php
--------------------- 
作者:傲雪星楓 
來源:CSDN 
原文:https://blog.csdn.net/fdipzone/article/details/46702965 
版權宣告:本文為博主原創文章,轉載請附上博文連結!