Heim > Fragen und Antworten > Hauptteil
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粉9795861592024-04-03 20:33:20
您可以尝试一下,ATTR_STRINGIFY_FETCHES
$pdoConnect->setAttribute(PDO::ATTR_STRINGIFY_FETCHES, true);
参考:https://www.php.net/manual/en /pdo.setattribute.php