PHP问题:将pdo列值转换为字符串的问题
P粉403804844
P粉403804844 2024-04-03 00:18:38
0
1
568

本质上,我正在使用 pdo 运行以下查询并将结果格式化为 JSON。问题是我需要 column2 始终在 JSON 中显示为字符串,即使该值是数字,也不需要重新格式化其他列值,因此我尝试执行 for 循环以使用 strvalue 进行转换。

$stmt = $pdoConnect->prepare('

    SELECT column1, column2, column3 from table1 where column1 = "tree"
');

$stmt->execute([]);


$row = $stmt->fetchAll(PDO::FETCH_ASSOC);

foreach ($row as $rowvalue) {
    strval($rowvalue["column2"]);
}
    
echo json_encode($row);
?>

当前 JSON 响应:

[
  {
    "column1": "tree",
    "column2": 29012,
    "column3": "foggy"
  },
  {
    "column1": "tree",
    "column2": 00930239,
    "column3": "sunny"
  },
   {
    "column1": "tree",
    "column2": 203943,
    "column3": "rainy"
   }
  ]

理想的 JSON 响应:

[
  {
    "column1": "tree",
    "column2": "29012",
    "column3": "foggy"
  },
  {
    "column1": "tree",
    "column2": "00930239",
    "column3": "sunny"
  },
   {
    "column1": "tree",
    "column2": "203943",
    "column3": "rainy"
   }
  ]

P粉403804844
P粉403804844

全部回复(1)
P粉979586159

您可以尝试一下,ATTR_STRINGIFY_FETCHES

$pdoConnect->setAttribute(PDO::ATTR_STRINGIFY_FETCHES, true);

参考:https://www.php.net/manual/en /pdo.setattribute.php

phpfiddle

热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板