-1

私はカテゴリテーブルを持っています:

カテゴリ ID: 整数

カテゴリ名: 文字列

以下を使用して、データベースからデータを取得しました。

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"}]}

カテゴリ ID を文字列ではなく整数 ({"categoryId":1) として返すことはできますか? mssql_fetch_array が文字列を返すことはわかっています。フェッチ結果を json_encode するときにデータベースのデータ型を保持する良い方法はありますか?

4

1 に答える 1

-1

ドキュメントでmysql_fetch_arrayは、それは明確に書かれています

フェッチされた行に対応する文字列の配列を返します。行がこれ以上ない場合はFALSEを返します。返される配列のタイプは、result_typeがどのように定義されているかによって異なります。

したがって、型キャストによってデータ型を変更する方が適切です。

$foo = (int) $bar;
于 2012-08-16T08:53:50.867 に答える