Heim > Datenbank > MySQL-Tutorial > Warum wird mein MySQL-Ganzzahlfeld in PHP als String zurückgegeben?

Warum wird mein MySQL-Ganzzahlfeld in PHP als String zurückgegeben?

Linda Hamilton
Freigeben: 2024-12-17 10:47:25
Original
704 Leute haben es durchsucht

Why Is My MySQL Integer Field Returned as a String in PHP?

MySQL-Ganzzahlfeld wird in PHP als String zurückgegeben

Dieses Problem tritt beim Abrufen von Daten aus einer MySQL-Datenbank mit PHP auf. Unabhängig vom in der Datenbank definierten Datentyp werden Daten in PHP standardmäßig immer als String zurückgegeben. Diese Diskrepanz kann rätselhaft sein, insbesondere wenn man erwartet, dass sich ein Integer-Feld so verhält.

In Ihrem speziellen Fall werden die Daten mit der als INT(11) deklarierten Datenbankfeld-Benutzer-ID mit der Abfrage abgerufen:

"SELECT userid FROM DB WHERE name='john'"
Nach dem Login kopieren

Um das Ergebnis zu verarbeiten, verwenden Sie:

$row=$result->fetch_assoc();
$id=$row['userid'];
Nach dem Login kopieren

Allerdings, wenn Sie den Datentyp von $id mit echo überprüfen gettype($id); gibt „string“ anstelle von „integer“ zurück.

Lösung

Um dieses Problem zu beheben, stellt PHP Methoden zum Konvertieren der abgerufenen Zeichenfolge bereit Daten zurück in ein Ganzzahlformat. Sie können den folgenden Code verwenden:

$id = (int) $row['userid'];
Nach dem Login kopieren

Alternativ können Sie auch die Funktion intval() verwenden:

$id = intval($row['userid']);
Nach dem Login kopieren

Durch die Durchführung dieser Konvertierung stellen Sie sicher, dass die Variable $id vorhanden ist korrekt als ganzzahliger Datentyp erkannt, was eine entsprechende Behandlung und Operationen als Ganzzahl ermöglicht.

Das obige ist der detaillierte Inhalt vonWarum wird mein MySQL-Ganzzahlfeld in PHP als String zurückgegeben?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage