MySQL-Ganzzahlfeldabruf in PHP
Beim Abrufen von Ganzzahldaten aus einer MySQL-Datenbank in PHP kann es überraschend sein, dass die zurückgegebenen Daten zurückgegeben werden value ist stattdessen eine Zeichenfolge. Dieser Artikel befasst sich mit diesem Problem und bietet eine Lösung.
Problem:
Betrachten Sie eine MySQL-Tabelle mit einem Feld:
userid INT(11)
Dieses Feld wird abgerufen mit der folgenden Abfrage:
SELECT userid FROM DB WHERE name='john'
und Verarbeitung des Ergebnisses als:
$row=$result->fetch_assoc(); $id=$row['userid']; echo gettype($id); // Outputs: string
zeigt, dass der Wert von $id eine Zeichenfolge und keine Ganzzahl ist.
Lösung:
MySQL-Datentypen sind Wird beim Abrufen mit PHP immer in Strings konvertiert. Um die Zeichenfolge wieder in eine Ganzzahl umzuwandeln, verwenden Sie eine der folgenden Methoden:
$id = (int) $row['userid']; // Explicit typecasting $id = intval($row['userid']); // Using the intval() function
Durch die Verwendung einer dieser Methoden können Sie sicherstellen, dass Ihre Ganzzahlwerte in Ihrem PHP-Skript korrekt interpretiert und verarbeitet werden.
Das obige ist der detaillierte Inhalt vonWarum werden MySQL-Ganzzahlfelder in PHP als Zeichenfolgen abgerufen und wie kann ich das Problem beheben?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!