WinFuture-Forum.de: Php: Zwei Arrays Gleichzeitig Ausgeben - WinFuture-Forum.de

Zum Inhalt wechseln

Nachrichten zum Thema: Entwicklung
Seite 1 von 1

Php: Zwei Arrays Gleichzeitig Ausgeben


#1 _BigTim_

  • Gruppe: Gäste

geschrieben 21. August 2009 - 11:16

Hallo!
Ich hab hier zwei Arrays. Eins hat diverse IDs gespeichert. Das andere diverse Namen.
Nun möchte ich die beiden in einer Tabelle ausgeben.
Wie stell ich das am besten an?
Ne While-Schleife dürfte da passen mein ich, nur bei der Umsetzung happert es.

Grüße, Tim
0

Anzeige



#2 Mitglied ist offline   mush 

  • Gruppe: aktive Mitglieder
  • Beiträge: 868
  • Beigetreten: 29. Mai 07
  • Reputation: 7

geschrieben 21. August 2009 - 11:27

Hängt ja vom Aufbau der Arrays ab. Entweder du nimmst eine for-Schleife und nutzt den jeweiligen Array-Index oder du verschachtelst zwei Schleifen, falls die Tabelle z.B. eine Baumstrktur haben soll.
insane in the membrane
0

#3 _BigTim_

  • Gruppe: Gäste

geschrieben 21. August 2009 - 11:39

Hi!
Die beiden arrays sollen ganz normal nebeneinander ausgegeben werden.

ID Name
ID Name
ID Name
... ...

Gebe ein Array momentan so aus:

foreach ($bla as $value) {
echo "<tr>";
print "<td>" .$value ."</td>";
print "</tr>";
}

Dadurch wird es schön unter einander ausgegeben.
Bei nem zweiten zerschießt es mir schon die Tabelle und es soll noch ein drittes folgen.
0

#4 Mitglied ist offline   TO_Webmaster 

  • Gruppe: Moderation
  • Beiträge: 3.185
  • Beigetreten: 27. März 02
  • Reputation: 82
  • Geschlecht:Männlich

geschrieben 21. August 2009 - 12:53

Ungetestet, aber so oder so ähnlich sollte es funktionieren:

reset($array1);
reset($array2);

echo '<table>';
while( ( ( $value1 = each( $array1 ) ) !== FALSE ) && ( ( $value2 = each( $array2 ) ) !== FALSE ) )
{
echo '<tr><td>' . $value1['value'] . '</td><td>' . $value2['value'] . '</td></tr>';
}
echo '</table>';

reset($array1);
reset($array2);


Noch schneller solltest du mit current und next sein können. Meine Lösung dagegen umgeht das Problem, dass im Array auch FALSE stehen kann.

Falls die Arrays unterschiedlich lang sind, musst du den Code nach deinen Wünschen anpassen. Hier wird abgebrochen, wenn das Ende des kürzesten Arrays erreicht ist.

MfG TO_Webmaster

Dieser Beitrag wurde von TO_Webmaster bearbeitet: 21. August 2009 - 13:00

The old reverend Henry Ward Beecher
called a hen the most elegant creature.
The hen pleased for that,
laid an egg in his hat.
And so did the hen reward Beecher.
0

#5 _BigTim_

  • Gruppe: Gäste

geschrieben 21. August 2009 - 13:39

Danke schön TO_Webmaster. :)
Habe auch noch ein wenig rumprobiert und folgendes gemacht:

for($i = 0; $i < sizeof($name); $i++) {
echo "<tr>";
echo "<td>" ."$name[$i] ". "</td>";
echo "<td>" ."$vornae[$i] ". "</td>";
echo "<td>" ."$ID[$i] ". "</td>";
echo "</tr>";
}

Klappt auch. :)
0

#6 Mitglied ist offline   TO_Webmaster 

  • Gruppe: Moderation
  • Beiträge: 3.185
  • Beigetreten: 27. März 02
  • Reputation: 82
  • Geschlecht:Männlich

geschrieben 21. August 2009 - 13:49

Ja, das geht, solange die Arrays numerisch fortlaufend indiziert sind.

MfG TO_Webmaster
The old reverend Henry Ward Beecher
called a hen the most elegant creature.
The hen pleased for that,
laid an egg in his hat.
And so did the hen reward Beecher.
0

#7 _BigTim_

  • Gruppe: Gäste

geschrieben 21. August 2009 - 14:59

Ist in diesem Fall so. Deswegen dürfte das keine Probleme machen. =)
0

Thema verteilen:


Seite 1 von 1

1 Besucher lesen dieses Thema
Mitglieder: 0, Gäste: 1, unsichtbare Mitglieder: 0