PHP-Frage: Problem beim Konvertieren des PDO-Spaltenwerts in einen String
P粉403804844
P粉403804844 2024-04-03 00:18:38
0
1
569

Im Wesentlichen verwende ich pdo, um die folgende Abfrage auszuführen und die Ergebnisse in JSON zu formatieren. Das Problem besteht darin, dass Spalte2 immer als Zeichenfolge in JSON angezeigt werden muss, auch wenn der Wert eine Zahl ist, ohne die anderen Spaltenwerte neu zu formatieren. Deshalb versuche ich, eine for-Schleife zur Konvertierung mithilfe von strvalue durchzuführen.

$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);
?>

Aktuelle JSON-Antwort:

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

Ideale JSON-Antwort:

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

P粉403804844
P粉403804844

Antworte allen(1)
P粉979586159

您可以尝试一下,ATTR_STRINGIFY_FETCHES

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

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

phpfiddle

Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage