1. Diese Seite verwendet Cookies. Wenn du dich weiterhin auf dieser Seite aufhältst, akzeptierst du unseren Einsatz von Cookies. Weitere Informationen

PHP: zahl in einzelne Ziffern aufsplitten und in Array

Dieses Thema im Forum "Web-Programmierung" wurde erstellt von simusch, 13.04.2005.

  1. simusch

    simusch Thread Starter MacUser Mitglied

    Mitglied seit:
    27.09.2004
    Beiträge:
    2.245
    Zustimmungen:
    190
    Hallo

    stehe gerade vor einem Gedanken-Knopf-Problem...

    Situation:

    habe eine Zahl, z.b. 111221
    diese möchte ich in einzelne Ziffern splitten und diese in ein Array schreiben:

    $ziffer[0] = 1
    $ziffer[1] = 1
    $ziffer[2] = 1
    $ziffer[3] = 2
    $ziffer[4] = 2
    $ziffer[5] = 1

    nur... wie schaff ich das??
    wenn ich mit String-funktionen arbeite, hab ich plötzlich nullen, wo keine sein sollten...

    DANKE
     
  2. bondiblue

    bondiblue MacUser Mitglied

    Mitglied seit:
    27.10.2001
    Beiträge:
    259
    Zustimmungen:
    0
    hi

    wie arbeitest du den mit string funktionen?
    poste mal dein phpcode.

    auf anhieb fällt mir nur auf das du ein int als string behandeln willst...

    lg
    bb
     
  3. simusch

    simusch Thread Starter MacUser Mitglied

    Mitglied seit:
    27.09.2004
    Beiträge:
    2.245
    Zustimmungen:
    190
    ich möchte ja den int nicht als string behandeln... nur dann kann ich ihn nicht splitten...

    so funktionierts nicht:

    PHP:
            $letzte_zeile 111221;

            
    //letzte zeile aufteilen
            
    $ziffer preg_split('//'$letzte_zeile);

            
    //anzahl stellen
            
    $anz_ziffer count($ziffer);
        
    echo 
    $anz_ziffer."<br>";

    foreach(
    $ziffer as $einzel)
    {
        echo 
    $einzel.", ";
    }    
    Ausgabe:

    8
    , 1, 1, 1, 2, 2, 1, ,

    sollte sein:

    6
    1, 1, 1, 2, 2, 1,
     
  4. master_p

    master_p MacUser Mitglied

    Mitglied seit:
    31.01.2005
    Beiträge:
    1.063
    Zustimmungen:
    23
    Mach's doch so in etwa:
    Code:
    for ($counter = 0; $counter < $laengeVariable; $counter++)  {
      $array[$counter] = $substr($variable, 0,1);
      $variable = $substr($variable, 1, ($laengeVariable-$counter));
      }
    
    Für's auslesen dann natürlich:
    foreach ($array as $key => $value)  {
      print "Zahl $key ist $value";
      }
    
    So müsste es eigentlich gehen. Oder ich hab' das Problem falsch verstanden.
     
  5. Nogger

    Nogger MacUser Mitglied

    Mitglied seit:
    03.08.2004
    Beiträge:
    367
    Zustimmungen:
    0
    $ziffer = preg_split('//', $letzte_zeile, -1, PREG_SPLIT_NO_EMPTY);

    Das ist sogar ein Beispiel in der Anleitung zu preg_split...
     
  6. simusch

    simusch Thread Starter MacUser Mitglied

    Mitglied seit:
    27.09.2004
    Beiträge:
    2.245
    Zustimmungen:
    190
    ok besten dank... soweit scheint es jetzt immerhin zu funktionieren :)

    ist ein ziemlich komplexes script, jedenfalls bis es mal im kopf zusammengedacht ist ;-)
     
  7. bondiblue

    bondiblue MacUser Mitglied

    Mitglied seit:
    27.10.2001
    Beiträge:
    259
    Zustimmungen:
    0
    zähl ohne preg_split:

    PHP:
    <?php


    $letzte_zeile 
    "111221"
    //letzte zeile aufteilen 
    $ziffer preg_split('//'$letzte_zeile);
    //anzahl stellen
    $anz_ziffer count($ziffer);

    $var=strlen($letzte_zeile);

    echo 
    $var;
    echo 
    $anz_ziffer."<br>";
    foreach(
    $ziffer as $einzel
    {
    echo 
    $einzel.", "
    }
    ?>
     
  8. simusch

    simusch Thread Starter MacUser Mitglied

    Mitglied seit:
    27.09.2004
    Beiträge:
    2.245
    Zustimmungen:
    190
    SOOO.. es ist geschafft...

    wer kann das Rätsel lösen??

    Bitte sehr...