PHP mssql_fetch_array并获取数据库数据类型


PHP mssql_fetch_array and get database data type

>我有一个类别表:

类别 ID: int

类别名称:字符串

我使用以下方法从数据库中检索数据:

while($rows[] = mysql_fetch_array($result,MSSQL_ASSOC)){}

我想以 json 格式显示结果。

$response = array('success' => true, 'data' => $rows);
echo json_encode($response);

它返回:

{"success":true,"data":[{"categoryId":"1","categoryName":"Car"}]}

是否可以将 categoryId 返回为整数({"categoryId":1)而不是字符串?我知道mssql_fetch_array会返回字符串。有什么好方法可以在json_encode获取结果时保留数据库数据类型?

mysql_fetch_array文档中,写得很清楚

返回与读取的行对应的字符串数组,或者 如果不再有行,则为 FALSE。返回数组的类型取决于 如何定义result_type。

所以你最好按类型转换更改数据类型

$foo = (int) $bar;