Ankündigung

Einklappen
Keine Ankündigung bisher.

explode() mal anders! Nur wie?

Einklappen

Neue Werbung 2019

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

  • explode() mal anders! Nur wie?

    Hi Leute,

    also wie ich aus meinem letzten Post erfahren habe kann man mit dem Befehl explode() einen String zerlegen z.B. einen Satz wenn dort ein Leerzeichen vorhanden ist. Nun ist mein prob folgendes ich habe eine Zahl z.B. 1234567. Nun gibt es dort kein Leerzeichen oder ein Zeichen an sich z.B. ":" oder "/" mach dem ich es teilen könnte. Ich will nun das ich die Zahl "1234567" nachher so vorfinde:

    Code:
    $fullvar=1234567;
    $var1=12;
    $var2=34;
    $var3=56;
    $var4=7;
    Sozusagen will ich die Zahl "1234567" in 2er schritten abtrennen und dann in die Variablen spiechern! Nur wie geht das, mit explode() kann man ja nur nach einem bestimmten Zeichen abtrennen und nicht nach einer bestimmten stelle, oder?

    Brauche hilfe, thx im voraus leute!!

  • #2
    Du kannst mit folgender Funktion nach jedem zweiten Zeichen ein Leerzeichen einfügen lassen:

    Code:
    <?php
      $fullvar = chunk_split($fullvar, 2);
    ?>
    Jetzt kannst du den String Problemlos mit explode() trennen:

    Code:
    <?php
      $var_array = explode(" ", $fullvar);
    ?>
    Ausgabe:

    Code:
    <?php
      foreach($var_array as $value)
      {
        echo $value . "
    \n";
      }
    ?>
    Gruß, Manuel.

    Kommentar


    • #3
      Hi,

      also das mit dem "chunk_split" geht soweit! Nur er macht das Teilen nun nicht mehr! Mein Code sieht wie folgt aus:

      Code:
      <?php
      
      $VAR=chunk_split($TEIL2, 2);
      
      $ARRAY=split(" ", $VAR, 4);
      
      echo "$ARRAY[0] - $ARRAY[1] - $ARRAY[2] - $ARRAY[3]";
      
      ?>
      Nun gibt mir mein PC aber nicht:

      Code:
      12 - 34 - 56 - 7
      aus sondern stattdessen:

      Code:
      12 34 56 7 - - -
      Was ist das verdammt und wie bekomme ich das weg!
      Lasst euch von den "-" net stören das ist nur zur besseren Übersicht! Aber wie bekomme ich das nun "12 - 34 - 56 - 7". Ich werd hir noch durchdrehen!

      MFG ich!

      Kommentar


      • #4
        Code:
        echo $ARRAY[0] . "-" . $ARRAY[1] . "-" . $ARRAY[2] . "-" . $ARRAY[3];

        Kommentar


        • #5
          Re: explode() mal anders! Nur wie?

          Zitat von Broadcast
          Hi Leute,

          also wie ich aus meinem letzten Post erfahren habe kann man mit dem Befehl explode() einen String zerlegen z.B. einen Satz wenn dort ein Leerzeichen vorhanden ist. Nun ist mein prob folgendes ich habe eine Zahl z.B. 1234567. Nun gibt es dort kein Leerzeichen oder ein Zeichen an sich z.B. ":" oder "/" mach dem ich es teilen könnte. Ich will nun das ich die Zahl "1234567" nachher so vorfinde:

          Code:
          $fullvar=1234567;
          $var1=12;
          $var2=34;
          $var3=56;
          $var4=7;
          Sozusagen will ich die Zahl "1234567" in 2er schritten abtrennen und dann in die Variablen spiechern! Nur wie geht das, mit explode() kann man ja nur nach einem bestimmten Zeichen abtrennen und nicht nach einer bestimmten stelle, oder?

          Brauche hilfe, thx im voraus leute!!
          Wofür brauch man denn sowas?

          Kommentar


          • #6
            es gibt so viel was so aussieht als würde man es nicht brauchen aber es kann ganz sinnvoll sein

            Kommentar


            • #7
              @ BURNER

              es geht immer noch net! ich bekomm immernoch folgende ausgabe:

              Code:
              12 34 56 7 ---
              Es will einfach nicht, so als würde man versuchen den Text in nem Bild zu ändern!

              @ QUADAPTOR

              Das ist für ne ermittlung des Alters von der Personalausweisnummer!!

              HILFE!!! ES GEHT IMMER NOCH NET!! WEIS DENN KEINER WORAN DAS LIEGT??

              Kommentar


              • #8
                dann machs mal so:
                Code:
                $anzahl=count($array);
                $i=0;
                while($array[$i]){
                echo $array[$i];
                if($i!=$anzahl-1) echo "-";
                $i++;
                }

                Kommentar


                • #9
                  Hi, also!

                  Es geht immer noch nicht! da steht nun:

                  Code:
                  12 34 56 7 -
                  Kann es sein das er den String "1234567" nicht wikliche geteilt hat sondern er gauckelt mir das nur vor bzw. es sieht so aus! Aber das geht eigendlich nicht! Gibt es keine andere möglichkeit die Variable "1234567" in 2 er schritte aufzuteillen in andere Variablen?

                  MFG ich schon wieder! :wink:

                  Kommentar


                  • #10
                    die andere möglichkeit wär substr()
                    Code:
                    $strlen=strlen($str);
                    for($i=0;$i<=$strlen;$i=$i+2){
                    $array[]=substr($str,$i,2);
                    }
                    so ist auch jedes 2er paar ein array element

                    Kommentar


                    • #11
                      JUHU!! es klappt!! danke dir!! :P :P

                      Kommentar


                      • #12
                        gern geschehen :wink:
                        unverhofft kommt oft

                        Kommentar

                        Lädt...
                        X