Adresse/Name etc. von EINEM array in MEHRERE speichern

suedi

Mitglied
Hallo leute,

ich habe hier ein sehr dickes Problem und komme absolut nicht weiter...

Ich besitze folgende Textdatei mit etwa dem Inhalt:

NAME
VORNAME
Straße
PLZ
Wohnort
EMAIL.

getrennt werden die einzelnen werte durch ein <br>.
Ich habe alles in EIN ARRAY eingelesen. Aber wie der Titel schon sagt
will ich alles Werte in EINZELNE array abspeichern.
Ich habe schon die Variante probiert einen ZÄHLER laufen zu lassen und
ihn dann mit zb ($i%2) dem modulo operator zu trennen.

Im prinzip geht das , aber für 2 oder maximal 3 verschiedene Werte. Für das oben genannte geht das Ganze leider nicht.

So in etwa will ich dann eben einen Inhalt ausgeben

PHP:
while(list($key,$val1) = each($name))
        {                                                                       
              echo $key." - ".$val1."<br>";

        }

Ich hoffe ihr versteht was ich meine, ich verzweifle hier regelrecht.

Danke aber schonmal im vorraus an alle
euer suedi
 
so ich verfeinere mal mein problem etwas,also ich habe
das array $INHALT

und lese folgendermaßen ein

PHP:
while(list($key,$val)=each($INHALT))
     {
           $i++;                                                                
           if ($i%2==0)
              {
                  $name[$i/2] = $val;                                           //nur Namen auswählen
              }
     }

so hatte ich es mal geschafft(das ganze geht noch weiter, ist nur teil vom code),damals waren es nur name und vorname welches ich in einzelne array variablen(hier zb: $name) eingelesen hatte.

ich habe mal mit
PHP:
print_r( $INHALT);
ausgegeben, auf dem bildschirm erscheint folgendes(beispielhaft)

[1] => Hans
[2] => Maier
[3] => Elisenstraße 18
[4] => 23123
[5] => testdorf
[6] => test@test.de

wie ihr seht ein array mit viel inhalt was in MEHRER arrays gepackt werden soll.... nur wie das weiß ich nicht.....explode geht leider nicht wie ich es will....
 
Hmm. ich verstehe nicht, wie ich es noch deutlicher erklären soll

alle inhalte, wie name ,vorname ,adresse usw. sollen

in einzelne variablen mit dem selbigen namen gespeichert werden.

ich will sie dann im nachhinein so ausgeben

PHP:
 while(list($key,$val1) = each($name))
        {   
              echo $key." - ".$val1."<br>";

        }
 
Verstehe ich richtig, dass du nachher folgende Arrays haben willst. $name, $vorname, $adresse usw? Wenn ja dann hab ich vielleicht was:

PHP:
$i=1;
$zaehler = 0;
while(list($key,$val)=each($INHALT)) 
     { 
           $itemp = $i % 6;

           switch($itemp)
           {
           case "0":
             {  $email[$zaehler] = $val;
                $zaehler++;
                $i = 1;
                break;
             }
          case "1":
             {  $wohnort[$zaehler] = $val;
                 $i++;
                 break;
             }  
          case "2":
             {   $plz[$zaehler] = $val;
                 $i++;
                 break;
             } 
          case "3":
             {   $strasse[$zaehler] = $val;
                 $i++;
                 break;
             } 
          case "4":
             {   $vorname[$zaehler] = $val;
                 $i++
                 break;
             }     
           case "5":
           {  $name[$zaehler] = $val;
              $i++;
              break;
            }
          }                                                     
    }

Dann hast du nachher 6 Arrays(Name, Vorname usw)

Zuerst wird der case Fall 5 durcheführt( 1 % 6 = 5) und das Feld $name[0] gesetzt und dann $i erhöht. Am Schluss bei Fall "0", muss $i wieder auf 1 gesezt werden(damit es wieder von vorne geht, also wieder fall 5) und der zaehler erhöht.

Das ist vielleicht etwas verkehrt geschrieben, weil zuerst der Fall 5 eintritt und zuletzt Fall 0, aber ich hoffe du verstehst es.

Aber Achtung: Wenn ein Feld in $INHALT fehlt, also z.b. das Feld Name fehlt, verschiebt sich alles.

Ich hoffe das war ne Hilfe, ansonsten weiß ich auch nicht was du meinst.
 
Zuletzt bearbeitet:
Hallo

ja genau das hatte ich gemeint, dankeschön.

Werde ich gleich ausprobieren, und hoffe dass alles funktioniert.

Thankx
suedi

EDIT: wunderbar, der einzige fehler den du hast , ist das der $zaehler zähler bei jedem fall(case) mitlaufen muss, sonst habe ich immer den selben key und beim reinschreiben in die datenbank wäre das Fatal(wenn man keine kopie macht :-) )

danke nochmal
 
Zuletzt bearbeitet:
Kein Problem :)

Das mit dem Zaehler war Absicht, weil ich dachte, du willst nachher 6 Arrays:

$name[0] = Müller;
$vorname[0]=Hans;
...

$name[1]=Meier;
$vorname[1]=Peter;
...

,bei denen dann nachher alle zusammengehörenden denselben Index haben. Aber ist gut wenn ich mal helfen konnte, sonst ists immer andersrum :D
 
Zurück