Hallo Manfred,
deine Frage passt nicht zu dem Code, den Du eingangs gezeigt hast. Die fetch-Methode liefert Dir ein Array für eine Ergebniszeile der Abfrage.
$ausgabe= $statement->fetch(PDO::FETCH_ASSOC);
print_r($ausgabe);
sollte demnach dies hier liefern, ein einfaches Array:
Array
(
[titel] => Ort
[Inhalt_der_Var] => München
)
und nicht ein Array im Array, wie Du es in deiner zweiten Frage zeigst:
Array
(
[0] => Array
(
[titel] => Ort
[Inhalt_der_Var] => München
)
)
Das Array im Array bekommst Du von fetchAll geliefert, weil diese Methode nicht nur eine Zeile des Ergebnisses liest, sondern alle.
D.h. du musst schon wissen, was Du zum Abruf der Daten verwendet hast, musst wissen, in welcher Form das Abrufergebnis dargestellt wird, und dementsprechend programmieren.
Wenn $ausgabe ein Array im Array ist, wie von fetchAll geliefert, dann musst Du dein weiteres Feld an das innere Array anhängen. Das geht so:
array_push($ausgabe[0], "weiteres_feld");
Das Ergebnis ist dann
Array
(
[0] => Array
(
[titel] => Ort
[Inhalt_der_Var] => München
[0] => weiteres_feld
)
)
Vor "weiteres_feld" steht [0] =>
, weil array_push immer numerische Indexe anlegt, und bisher noch kein numerischer Index im inneren Array existiert. Darum beginnt er neu, bei 0.
Schwieriger wird es, wenn fetchAll mehr als eine Row geliefert hat. Der array_push erweitert nur das Array einer einzigen Row. Willst Du alle Rows erweitern, musst Du eine Schleife über alle Ergebniszeilen laufen lassen.
Die Grundsatzfrage ist aber: warum willst Du das Ergebnis einer DB-Abfrage erweitern, vor allem auf eine Weise, die nicht zum Stil der übrigen Einträge im Row-Array passt? Du vermengst auf diese Weise DB-Ergebnisse mit Arbeitsdaten, das kann zu ziemlichem Durcheinander führen.
Rolf
sumpsi - posui - clusi