Mysqli总是将数字作为字符串返回

时间:2014-02-25 18:56:05

标签: php mysql string pdo mysqli

我遇到了mysqli的问题。当我查询数据时,mysqli总是返回一个字符串。

在我的数据库中有一个表“模型”:

CREATE TABLE Models
(
    id INTEGER UNSIGNED NOT NULL AUTO_INCREMENT,
    name TEXT,
    PRIMARY KEY (id)
) ;

我的PHP代码

$mysqli = new mysqli($host,$username,$password,$database);
$resultSql = $mysqli->query('SELECT * FROM models');

$resultArray = array();
while($row =  $resultSql->fetch_assoc()) {
     array_push($resultArray,$row);
}
print(gettype($resultArray[0]['id']));

print()返回给我“string”。但是数据库中的字段“id”具有整数数据类型。我正在寻找一些设置,但找不到它。

我尝试过使用PDO,但遇到了同样的问题。如果你知道PDO的解决方案,我会很高兴。

你能帮助我吗?

感谢。

1 个答案:

答案 0 :(得分:1)

  

我正在寻找一些设置,但找不到它。

您必须使用基于mysqlnd的预准备语句来获取整数。

  

如果你知道PDO的解决方案,我会很高兴。

同样,需要安装基于mysqlnd的PDO