Mich würd da mal was interessieren...

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • Mich würd da mal was interessieren...

    PHP-Code:
    $month_array = array(01 => 'Januar'02 => 'Februar'03 => 'März'04 => 'April'05 =>'Mai'06 => 'Juni'07 => 'Juli'08 => 'August'09 => 'September'10 => 'Oktober'11 => 'November'12 => 'Dezember');

    echo 
    $month_array[07]; #Ausgabe: Juli
    echo $month_array[08]; #Ausgabe: September (!!!!!)
    echo $month_array[09]; #Ausgabe: September 
    Kurz: ALLE values werden korrekt (so wie ichs mir vorgestellt habe) ausgegeben, mit ausnahme von 08...

    Abgesehen davon steht NICHTS in der Datei. das array wird nicht verändert.
    Ich hoffe dieser Fehler ist reproduzierbar, sonst glaubts mir sicher keiner.
    ..und NEIN ich hab mich nicht vertippt. ist 1:1 copy+paste.

    Verändere ich die Keys von z.B. 03 auf 3 dann gehts, aber bitte, ich würd gern wissen wo der fehler is. auch klappt es wenn ich die keys so eingebe "04" etc.

  • #2
    3 ist eine Dezimal Zahl
    03 ist eine Oktal Zahl

    Von daher ist 3 === 03 also no Problemo
    Aber 08 ist keine gültige Oktalzahl!
    Wir werden alle sterben

    Kommentar


    • #3
      Ok,
      erstmal schönen Dank für die Antwort.
      Aber ehrlich gesagt, fallen mir noch 2 Gegenfragen ein

      1. Wie kommt man auf die Idee, durch 0X eine Oktalzahl zu definieren?
      2. Wieso gibt mir array[09] die 09? 09 is genausowenig Oktalzahl wie 08 oder?

      Kommentar


      • #4
        Lass die nullen doch einfach weg oder setz die Zahlen in -> ' <-
        gruss Chris

        [color=blue]Derjenige, der sagt: "Es geht nicht", soll den nicht stoeren, der's gerade tut."[/color]

        Kommentar


        • #5
          Original geschrieben von tudor
          1. Wie kommt man auf die Idee, durch 0X eine Oktalzahl zu definieren?
          Warum nicht?
          http://www.php.net/manual/de/language.types.integer.php

          2. Wieso gibt mir array[09] die 09? 09 is genausowenig Oktalzahl wie 08 oder?
          Ich müsste jetzt nachrechnen, aber in Anbetracht der Tatsache, dass OKtal was mit Acht zutun hat, und rein zufällig bei dir die 08 falsch behandelt wird, scheint sich da wohl was zu überschneiden oder so ... schnapp dir nen Taschenrechner und den Wikipedia-Artikel und informiere dich

          Original geschrieben von hhcm
          Lass die nullen doch einfach weg oder setz die Zahlen in -> ' <-
          Wieso sollte er das tun?

          Ein netter Guide zum übersichtlichen Schreiben von PHP/MySQL-Code!

          bei Klammersetzung bevorzuge ich jedoch die JavaCoding-Standards
          Wie man Fragen richtig stellt

          Kommentar


          • #6
            Original geschrieben von ghostgambler
            Wieso sollte er das tun?
            Gegenfrage .. Wieso schreibt man 01 ?
            "echo intval(01)" Na was kommt raus?
            Wenn er die 0 unbedingt behalten will (aus welchen gründen auch immer) soll er halt einen String draus machen.
            gruss Chris

            [color=blue]Derjenige, der sagt: "Es geht nicht", soll den nicht stoeren, der's gerade tut."[/color]

            Kommentar


            • #7
              hatte eigt. geschrieben, dass ich das problem vermeiden konnte, indem ich n string draus mache. Wollte aber trotzdem mal wissen, worans lag. das weiss ich jetz, böse oktalzahl


              Jedenfalls schönen Dank an alle !

              Kommentar

              Lädt...
              X