Hi @all,
der Titel klingt zwar doof, aber ich weiß nicht wie ich es besser beschreiben soll.
Also die Gegebenheiten sind zB ein Daten-array aus der DB:
Und nun möchte ich dieses Array in Folgende Strucktur bringen:
Bisher habe ich mir überlegt das ich mir eine Funktion schreibe mit folgendem Aufruf:
Habt Ihr für mich einen Denkanstoß, wie man sowas realisieren kann, ich brauche so eine Funktion öfter mal aber Google spuckt so dazu nix aus und PHP hat keine solcher Bordmittel.
Mei Gedanke dazu war das die Strucktur Array Values mit : den bezeichnungen der Schlüssel des Daten Array´s gleichen und man so irgendwie Strucktur Array im einzelnen als "Template" nutzen kann.
Bin mir aber nicht sicher ob des so funktionieren würde wie ich es mir gedacht habe.
Gruß strolch00
ps Schonmal vielen Dank für eure Hilfe.
der Titel klingt zwar doof, aber ich weiß nicht wie ich es besser beschreiben soll.
Also die Gegebenheiten sind zB ein Daten-array aus der DB:
Code:
array(38) {
[0] => array(4) {
["agb_id"] => string(1) "1"
["agb_title"] => NULL
["agb_message"] => string(162) "Die Allgemeinen Geschäftsbedingungen gelten für alle MKL Mitglieder und werden mit Absendung des Anmeldeformulars für die Dauer der Mitgliedschaft akzeptiert. "
["LEVEL"] => string(1) "0"
}
[1] => array(4) {
["agb_id"] => string(1) "2"
["agb_title"] => string(15) "Voraussetzungen"
["agb_message"] => NULL
["LEVEL"] => string(1) "1"
}
[2] => array(4) {
["agb_id"] => string(2) "13"
["agb_title"] => string(15) "Voraussetzungen"
["agb_message"] => string(59) "Für die Anmeldung wird ein aktiver Klammaccount benötigt."
["LEVEL"] => string(1) "2"
}
[3] => array(4) {
["agb_id"] => string(2) "14"
["agb_title"] => string(15) "Voraussetzungen"
["agb_message"] => string(120) "Die Eingabe des Klamm-Losepasswortes dient nur dem Zweck die KlammID zu bestätigen und wird zu keiner Zeit gespeichert."
["LEVEL"] => string(1) "2"
}
[4] => array(4) {
["agb_id"] => string(1) "3"
["agb_title"] => string(9) "Anmeldung"
["agb_message"] => NULL
["LEVEL"] => string(1) "1"
}
[5] => array(4) {
["agb_id"] => string(2) "15"
["agb_title"] => string(9) "Anmeldung"
["agb_message"] => string(48) "Jedes Mitglied darf nur ein MKL Konto eröffnen."
["LEVEL"] => string(1) "2"
}
....
Und nun möchte ich dieses Array in Folgende Strucktur bringen:
Code:
array(13) {
[0] => array(1) {
["message"] => string(162) "Die Allgemeinen Geschäftsbedingungen gelten für alle MKL Mitglieder und werden mit Absendung des Anmeldeformulars für die Dauer der Mitgliedschaft akzeptiert. "
}
[1] => array(3) {
["id"] => int(1)
["title"] => string(15) "Voraussetzungen"
["messages"] => array(2) {
[0] => string(59) "Für die Anmeldung wird ein aktiver Klammaccount benötigt."
[1] => string(120) "Die Eingabe des Klamm-Losepasswortes dient nur dem Zweck die KlammID zu bestätigen und wird zu keiner Zeit gespeichert."
}
}
[2] => array(3) {
["id"] => int(2)
["title"] => string(9) "Anmeldung"
["messages"] => array(2) {
[0] => string(48) "Jedes Mitglied darf nur ein MKL Konto eröffnen."
[1] => string(130) "Die bei der Anmeldung angeforderten Daten sind wahrheitsgetreu anzugeben. Falschangaben können zur Sperrung des Accounts führen."
}
}
...
Bisher habe ich mir überlegt das ich mir eine Funktion schreibe mit folgendem Aufruf:
PHP:
$arrStrucktur = array(
array('messages' => ':messages'),
array(
'id' => ':agb_id',
'title' => ':agb_categorie',
'messages' => array(
':agb_message'
)
)
);
$arrResult = $this->arrayTransform($arrData, $arrStrucktur);
/**
* arrayTransform
*/
protected function arrayTransform($arrData, $arrStrucktur)
{
// so nu was hier
// man könnte noch streiten ob Data Array als Referenz übergeben wird
}
Habt Ihr für mich einen Denkanstoß, wie man sowas realisieren kann, ich brauche so eine Funktion öfter mal aber Google spuckt so dazu nix aus und PHP hat keine solcher Bordmittel.
Mei Gedanke dazu war das die Strucktur Array Values mit : den bezeichnungen der Schlüssel des Daten Array´s gleichen und man so irgendwie Strucktur Array im einzelnen als "Template" nutzen kann.
Bin mir aber nicht sicher ob des so funktionieren würde wie ich es mir gedacht habe.
Gruß strolch00
ps Schonmal vielen Dank für eure Hilfe.