mediengestalter.info
FAQ :: Mitgliederliste :: MGi Team

Willkommen auf dem Portal für Mediengestalter

Aktuelles Datum und Uhrzeit: Di 16.04.2024 23:26 Benutzername: Passwort: Auto-Login

Thema: [SOLVED] [PHP] (int)$string = andere zahl nach typecast vom 29.10.2008


Neues Thema eröffnen   Neue Antwort erstellen MGi Foren-Übersicht -> Programmierung -> [SOLVED] [PHP] (int)$string = andere zahl nach typecast
Autor Nachricht
remote
Threadersteller

Dabei seit: 10.11.2006
Ort: /var/www/
Alter: 110
Geschlecht: Männlich
Verfasst Mi 29.10.2008 20:37
Titel

[SOLVED] [PHP] (int)$string = andere zahl nach typecast

Antworten mit Zitat Zum Seitenanfang

Code:
echo "pre-typecast: $foo";

$foo = (int)$foo;
echo "post-typecast: $foo";

pre-typecast: 3897214423
post-typecast: 2147483647


vermutlich irgendwas stupides (?) ... * Wo bin ich? *


Zuletzt bearbeitet von remote am Mi 29.10.2008 21:00, insgesamt 1-mal bearbeitet
  View user's profile Private Nachricht senden
bacon

Dabei seit: 24.10.2007
Ort: -
Alter: -
Geschlecht: -
Verfasst Mi 29.10.2008 20:51
Titel

Antworten mit Zitat Zum Seitenanfang

Ich nehme an, in $foo ist angeblich der integer drin?

Mach' mal ein gettype(3897214423);

=> double. Warum?

PHP-Doku:

Zitat:
If PHP encounters a number beyond the bounds of the integer type, it will be interpreted as a float instead. Also, an operation which results in a number beyond the bounds of the integer type will return a float instead.


Java hätte dir da bereits zur Compilezeit eine Riesenwatschn gegeben, ein Feature von PHP aber ist diese automatische Typconversion.


Zuletzt bearbeitet von bacon am Mi 29.10.2008 20:53, insgesamt 1-mal bearbeitet
  View user's profile Private Nachricht senden
Anzeige
Anzeige
remote
Threadersteller

Dabei seit: 10.11.2006
Ort: /var/www/
Alter: 110
Geschlecht: Männlich
Verfasst Mi 29.10.2008 20:59
Titel

Antworten mit Zitat Zum Seitenanfang

Der Maximalwert hängt vom System ab. 32-Bit-Systeme haben einen maximalen Wertebereich für signed integer von -2147483648 bis 2147483647. Also wird beispielsweise auf solch einem System intval('1000000000000') 2147483647 zurückgeben.

..ich habs grad gefunden * Ich will nix hören... *

danke.
hab nun die spalte in MySQL auf BIGINT geändert und alles flutscht.
  View user's profile Private Nachricht senden
 
Ähnliche Themen [Javascript -> PHP] String wird falsch übergeben [solved]
RegExp String zwischen 2 Zeichen in einem String entfernen
[PHP] String -> date
[AS] String als Variable
im string eine abfrage? ...
[PHP]XML-String in ein Array wandeln
Neues Thema eröffnen   Neue Antwort erstellen
MGi Foren-Übersicht -> Programmierung


Du kannst keine Beiträge in dieses Forum schreiben.
Du kannst auf Beiträge in diesem Forum nicht antworten.
Du kannst an Umfragen in diesem Forum nicht mitmachen.