avi*_*viv 5 php mysql json types
我在mysql中有一个表:
CREATE TABLE user (id INT, name VARCHAR(250));
Run Code Online (Sandbox Code Playgroud)
我查询表:
$result = mysql_query("SELECT id,name FROM user");
Run Code Online (Sandbox Code Playgroud)
我收集结果:
while($row = mysql_fetch_assoc($result) $rv[] = $row;
Run Code Online (Sandbox Code Playgroud)
我返回数据:
echo json_encode($rv);
Run Code Online (Sandbox Code Playgroud)
问题是id返回为字符串而不是int,甚至在json_encode之前.如果我强制$ row ['id'] =(int)$ row ['id']; - 它工作正常.
我如何强制mysql在$行中返回正确的数据类型?
10X.
PDO->bindColumn可以这样
$stmt = $dbh->prepare($sql);
$stmt->bindColumn('int_col', $intVar, PDO::PARAM_INT);
$stmt->bindColumn('string_col', $strVar, PDO::PARAM_STR);
$stmt->execute();
$stmt->fetch(PDO::FETCH_BOUND);
Run Code Online (Sandbox Code Playgroud)
$intVar 将自动转换为 int