Ankündigung

Einklappen
Keine Ankündigung bisher.

[Erledigt] zählen mit vorangehender 0

Einklappen

Neue Werbung 2019

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

  • [Erledigt] zählen mit vorangehender 0

    Hallo,
    ich möchte in einem Script so zählen:
    01, 02, 03 ... 10, 11, 12 ....

    Hat jemand eine Idee wie ich die 0en bei 1, 2, 3 ... hinbekomme?!

    MfG php10

  • #2
    sprintf()

    Kommentar


    • #3
      danke,
      also mit einer for schleife lasse ich $i bis zu einer bestimmten zahl durchzählen und in der for-schleife mache ich das:
      PHP-Code:
      printf("[%'02s]\n",  $i); 
      also, dass er bis der integer 2 stellen hat eine 0 davorschreibt

      ist das so richtig?

      Kommentar


      • #4
        Probiers aus
        MfG
        ~Capfly

        Kommentar


        • #5
          PHP-Code:
          printf("%02s\n",$i
          macht mir folgende ausgabe:

          01 302 303 304 305 306 307 308 309 310 311 312 313 314 315 316 317 318 319 320 321 322 323 324 325 3

          wo kommen die 3en her?! ich lasse von 1-25 zählen

          EDIT: hier mal der gesamte Code
          PHP-Code:
          for($i=1;$i<=25;$i++) {
          echo 
          printf("%02s\n",$i);

          Kommentar


          • #6
            Danke an alle die mir geholfen haben.
            Ich habs jetzt:

            PHP-Code:
            <?php
            for($i=1;$i<=25;$i++) {
            echo 
            sprintf("%02s",$i);
            echo 
            "<br>";
            }
            ?>
            Frohe Ostern noch

            MfG php10

            Kommentar


            • #7
              str_pad() geht auch und ist einfacher zu lesen als sprintf().

              Kommentar


              • #8
                Das mag zwar sein, aber ist nicht für diesen Zweck geeignet. Wie der name str_pad schon sagt, ist diese Funktion für die Arbeit mit Strings, nicht mit Zahlen gedacht. Das PHP automatisches Type-Casting anwendet ist doch immer wieder eine Quelle für Misverständnisse
                [IMG]http://media.ubuntuusers.de/portal/files/ubuntu.png[/IMG][IMG]http://sqlmanager.net/i/ico/mysql.gif[/IMG][SIGPIC][/SIGPIC]

                Kommentar


                • #9
                  Statt sprintf solltest du aber printf nehmen, sonst wäre das doppelte Arbeit
                  "Dummheit redet viel..Klugheit denkt und schweigt.." [Amgervinus]

                  Kommentar


                  • #10
                    Zitat von php10 Beitrag anzeigen
                    PHP-Code:
                    printf("%02s\n",$i
                    macht mir folgende ausgabe:

                    01 302 303 304 305 306 307 308 309 310 311 312 313 314 315 316 317 318 319 320 321 322 323 324 325 3

                    wo kommen die 3en her?!
                    Das ist der Rückgabewert von printf, den du dir unsinnigerweise mit ausgeben lässt ...


                    Bitte informiere dich künftig erst mal selber im Manual, was Funktionen, die dir hier genannt werden, genau machen.
                    [SIZE="1"]RGB is totally confusing - I mean, at least #C0FFEE should be brown, right?[/SIZE]

                    Kommentar


                    • #11
                      was soll ich nun nehmen?! printf oder sprintf??
                      wie macht man denn bei printf diese printf-eigene zahl weg?!

                      ich such was um die integerzahlen 1-9 die von einer for schleife kommen mit einer 0 zu beginnen..

                      php10

                      Kommentar


                      • #12
                        Wie der name str_pad schon sagt, ist diese Funktion für die Arbeit mit Strings, nicht mit Zahlen gedacht.
                        Und wie %s sagt, ist das auch für Strings gedacht. Dezimalziffern mit führenden Nullen sind immer Strings, denn (eine) führende Null(en) sind in PHP Oktalangaben vorbehalten.

                        sprintf ('%02d' , $in); für Rückgabe des Wertes, sonst printf für Ausgabe.
                        [COLOR="#F5F5FF"]--[/COLOR]
                        [COLOR="Gray"][SIZE="6"][FONT="Georgia"][B]^^ O.O[/B][/FONT] [/SIZE]
                        „Emoticons machen einen Beitrag etwas freundlicher. Deine wirken zwar fachlich richtig sein, aber meist ziemlich uninteressant.
                        [URL="http://www.php.de/javascript-ajax-und-mehr/107400-draggable-sorttable-setattribute.html#post788799"][B]Wenn man nur Text sieht, haben viele junge Entwickler keine interesse, diese stumpfen Texte zu lesen.“[/B][/URL][/COLOR]
                        [COLOR="#F5F5FF"]
                        --[/COLOR]

                        Kommentar


                        • #13
                          Zitat von php10 Beitrag anzeigen
                          was soll ich nun nehmen?! printf oder sprintf??
                          Das kommt darauf an, ob du eine direkte Ausgabe, oder einen String erhalten willst.

                          wie macht man denn bei printf diese printf-eigene zahl weg?!
                          In dem man sie nicht ausgibt, wenn man sie nicht ausgeben will.

                          Wieso schreibst du echo davor?
                          [SIZE="1"]RGB is totally confusing - I mean, at least #C0FFEE should be brown, right?[/SIZE]

                          Kommentar


                          • #14
                            die zahl wird in einen link eingefügt
                            das mit dem echo war zum testen...

                            Kommentar


                            • #15
                              Zitat von php10 Beitrag anzeigen
                              die zahl wird in einen link eingefügt
                              Na dann ...

                              das mit dem echo war zum testen...
                              Ja, aber offenbar ohne, dass du dir den Unterschied zwischen sprintf und printf klar gemacht hast.
                              [SIZE="1"]RGB is totally confusing - I mean, at least #C0FFEE should be brown, right?[/SIZE]

                              Kommentar

                              Lädt...
                              X