mysqli将位和整数作为字符串返回
Posted
技术标签:
【中文标题】mysqli将位和整数作为字符串返回【英文标题】:mysqli returning bits and ints as string 【发布时间】:2012-03-15 01:14:30 【问题描述】:我有一个用 flex 制作的项目,使用 php 数据服务访问 SQL 服务器数据库,我需要将其转换为 mysql,我已将所有 PHP 服务从 sqlsrv 更改为 mysqli。像这样:
$this->connection = mysqli_connect(SERVER,USERNAME,PASSWORD,DATABASE); // Start Connection
$ssqlstring = "select * from Users";
$runssql = mysqli_query($this->connection, $ssqlstring);
while($user = mysqli_fetch_array($runssql))
$users[$user["ID"]] = $user;
return $users;
它在 sqlsrv 上运行良好,但使用 mysqli 它返回以将 INT
、BIT
或 DATE
值调整为 string
MySQL 上的主要数据类型是INT
、VARCHAR
、BIT(1)
、DATETIME
、DATE
(与 sqlsrv 相同)
而在 flex 上,返回类型主要是 object[]
【问题讨论】:
Accessing PHP MySQLI predefined constants via respective value? 的可能重复项 这能回答你的问题吗? How do I make sure that values from MySQL keep their type in PHP? 这能回答你的问题吗? MySQL integer field is returned as string in PHP 【参考方案1】:from the manual
返回一个 strings 数组,对应于获取的行;如果结果集中没有更多行,则返回 NULL。
PHP 中的原生类型相对较少,简而言之,可能的有 INT、FLOAT 和 STRING(其中 STRING 是所有其他类型的默认值,如 BIT 和 DATE 等)。 PDO
在使用更接近实际的类型方面要好一些,但仍然默认使用字符串很多。在mysqli
中,您可以使用mysqli_result_fetch_fields
来获取返回的字段类型,并将其转换为所需的格式,另请参见MYSQLI_TYPE_*
constants。
【讨论】:
根据您的回复我找到了这个***.com/questions/6537212/…,谢谢以上是关于mysqli将位和整数作为字符串返回的主要内容,如果未能解决你的问题,请参考以下文章
ruby 编写一个方法separate_comma,它以整数作为输入,并以逗号分隔的整数作为字符串返回