O
Offline
Gast
Hi,
ich habe ein CMS (Drupal 6) aufgesetzt und auch schon ein paar simple Module geschrieben.
Jetzt habe ich ein Problem da ich nicht weiß, wie ich bestimmte Werte eines Arrays in
eine andere bestimmte (und nur die) Array-Struktur in einer (aktuell sind es zwei) foreach-Schleifen schreiben kann.
Erstmal ein bisschen Code:
Nun lasse ich $infos mit print_r ausgeben und erhalte folgende Array-Struktur:
Nun möchte ich die Werte der ganzen Attribute in folgende Struktur umschreiben:
Ich habe schon etliches versucht, nur will es nicht einfach so klappen wie ich das möchte.
Ich bin auch der Meinung, dass ich mit diesen beiden Foreach-Schleifen den größten Teil geschafft habe:
Jetzt würde ich gerne wissen wie es am besten hinbekomme.
Versuche ich folgendes bekomme ich schonmal die VALUES, nur habe ich keinen blassen Schimmer
wie ich das in die oben erwähnte Array-Struktur bekomme:
Jetzt liegt es an euch mir zu helfen.
Ihr müsst mir natürlich keinen kompletten fertigen und passenden Code geben, ein sehr guter Lösungsanstatz oder eine nützliche Funktion wäre hier auch hilfreich.
ich habe ein CMS (Drupal 6) aufgesetzt und auch schon ein paar simple Module geschrieben.
Jetzt habe ich ein Problem da ich nicht weiß, wie ich bestimmte Werte eines Arrays in
eine andere bestimmte (und nur die) Array-Struktur in einer (aktuell sind es zwei) foreach-Schleifen schreiben kann.
Erstmal ein bisschen Code:
PHP:
// Funktioniert
$mega = db_query("SELECT * FROM {XY} WHERE aid>0 ORDER BY aid ASC");
while($bla = db_fetch_array($mega)) $infos[$bla["aid"]] = $bla;
// Alle Werte der Tabelle XY werden in $infos geschrieben
Nun lasse ich $infos mit print_r ausgeben und erhalte folgende Array-Struktur:
PHP:
Array
(
[1] => Array
(
[aid] => 1
[nid] => 51
[le_name] => STRING
[address] => STRING
[phone] => STRING
[available] => STRING
[usd] => STRING
[notice] => STRING
)
[2] => Array
(
[aid] => 2
[nid] => 52
...
)
[3] => Array
(
[aid] => 3
[nid] => 53
...
)
)
Nun möchte ich die Werte der ganzen Attribute in folgende Struktur umschreiben:
PHP:
$infos = array(
array("A-ID", [aid]),
array("N-ID", [nid]),
array("Name", [le_name]),
array("Anschrift", [address]),
array("Telefon", [phone]),
array("Verfügbar am", [available]),
array("Gehalt pro Stunde", [usd]),
array("Weiteres", [notice]),
);
Ich bin auch der Meinung, dass ich mit diesen beiden Foreach-Schleifen den größten Teil geschafft habe:
PHP:
foreach($infos as $m_a => $m_v){
// m_a = 1 ... n = ANZAHL DER aids
// m_v = aid[] ... notice[]
foreach($m_v as $a => $v){
// a = aid ... notice
// v = EINZELNE VALUES DER ATTRIBUTE
}
}
Jetzt würde ich gerne wissen wie es am besten hinbekomme.
Versuche ich folgendes bekomme ich schonmal die VALUES, nur habe ich keinen blassen Schimmer
wie ich das in die oben erwähnte Array-Struktur bekomme:
PHP:
$t_l = array(
'0' => 'A-ID',
'1' => 'N-ID',
'2' => 'Name',
'3' => 'Anschrift',
'4' => 'Telefon',
'5' => 'Verfügbar am',
'6' => 'Gehalt pro Stunde',
'7' => 'Weiteres',
);
$t_r = array();
foreach($infos as $m_a => $m_v){
// m_a = 1 ... n = ANZAHL DER aids
// m_v = aid[] ... notice[]
$i=0;
foreach($m_v as $a => $v){
// a = aid ... notice
// v = EINZELNE VALUES DER ATTRIBUTE
$t_r[$i] = $v;
}
}
// Jetzt nur noch irgendwie $t_l und $t_r in die o.g. Array-Struktur bringen
// und ich bin happy
// Habe array_merge() ausprobiert, klappt aber leider nicht
Jetzt liegt es an euch mir zu helfen.

Ihr müsst mir natürlich keinen kompletten fertigen und passenden Code geben, ein sehr guter Lösungsanstatz oder eine nützliche Funktion wäre hier auch hilfreich.