Zahl splitten und mit Arrays weiterarbeiten?!

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

  • Zahl splitten und mit Arrays weiterarbeiten?!

    Hallo Leute,

    ich bin ein php-newbie und brauche bisschen Gedankenanschub.

    Ich will eine 8-stellige Zahl aufsplitten und mit den einzelnen Zahlen weiterarbeiten.

    z.B.
    Die Zahl 12345678 kann ich mit str_split aufsplitten und in Arrays speichern. Aber die ersten 5 und die letzten 3 Zahlen muss ich getrennt erhöhen. Ich könnte zwar mit str_split(str, 5) die ersten 5 in Array speichern aber das will ich nicht, weil ich später auch mit einzelnen Zahlen weiterarbeiten muss.

    Meine Frage ist, wie kann ich die einzelnen Arraywerte zu einer variable übergeben, damit ich wie mit einer ganzen Zahl weiterarbeiten kann?

    z.B. $var = Array[0], Array[1], Array[2], Array[3], Array[5]

  • #2
    ich glaube, ich habe es bisschen kompliziert erklärt.

    Es gibt eine 10-Stellige zahl, die letzten 2 Stellen werden aus den ersten 8 Stellen berechnet. Aber vorher müssen diese ersten 8 Zahlen in 2 Teile getrennt werden.

    Bsp.:

    12345678

    12345 um 1 erhöhen 12346
    678 um 1 erhöhen 679

    12346679

    Jetzt müssen ungerade und gerade stellen aufsummiert und mit modulo berechnet werden.

    1+3+6+7=17 mod 2 = 1
    2+4+6+9=21 mod 2 = 1

    Jetzt habe ich die Zahl:
    1234667911

    Genau das will ich jetzt mit php machen.

    Kommentar


    • #3
      Meine Frage ist, wie kann ich die einzelnen Arraywerte zu einer variable übergeben, damit ich wie mit einer ganzen Zahl weiterarbeiten kann?

      z.B. $var = Array[0], Array[1], Array[2], Array[3], Array[5]

      PHP-Code:
      for ($i=0;$i<count($var_array);$i++) {
         
      $var_kein_array .= $var_array[$i];

      Gruß
      Uzu

      private Homepage

      Kommentar


      • #4
        Danke uzu!

        ich habe das Problem etwas anders gelöst. Ich habe die Zahl aufgespalten. Mit den Zahlen weitergearbeitet, jetzt muss ich diese als ganze Zahl zusammenfügen. Dafür müsste ich 4 Variable aneinander änhängen und einer gemeinsamen Variable übergeben, damit ich die gleiche Prozedur 50 mal wiederholen und eine Liste generieren kann. Ich weiss nicht nur, wie ich weitermachen soll.

        Kommentar


        • #5
          Variable verketten mit $Var1.$Var2

          habe schon gelöst. Es ist zwar sehr einfach aber bin halt ein newbie

          Kommentar


          • #6
            PHP-Code:
            $zahl 12345678;

            preg_match('#(\d{5})(\d{3})#'$zahl$array);

            $first5 $array[1]+1
            $last3 $array[2]+1

            $zahl2 str_split($zahl);




            $neun = ($zahl[0]+$zahl[2]+$zahl[4]+$zahl[6])%2;
            $zehn = ($zahl[1]+$zahl[3]+$zahl[5]+$zahl[7])%2;

            $ergebnis $first5.$last3.$neun.$zehn;

            echo 
            $ergebnis
            das liefert mir das gewünschte Ergebnis 1234667911 aber mit diesem Zahl möchte ich weiterarbeiten und 50 x wiederholen. Wenn ich das in for-schleife reinpacke, bekomme ich immer das gleiche Ergbenis. Irgend etwas mache ich falsch mit der Schleife aber was?

            Ach ja, ich weiss schon das man oben einiges besser machen kann aber meine Kenntnisse haben nur soweit gereicht
            Zuletzt geändert von maynak; 21.12.2008, 01:59.

            Kommentar


            • #7
              Du solltest $zahl = 12345678; nicht mit in der Schleife stehen haben und statt $ergebnis lieber $zahl verwenden.

              Kommentar


              • #8
                Original geschrieben von maynak
                ... das liefert mir das gewünschte Ergebnis 1234667911 aber mit diesem Zahl möchte ich weiterarbeiten und 50 x wiederholen.
                Das PHP-Handbuch empfiehlt für solche Zwecke die Funktion str_repeat().
                Klingon function calls do not have “parameters”‒they have “arguments”‒and they always win them!

                Kommentar

                Lädt...
                X