Guten morgen zusammen.
Ich versuch derzeit meine Website so zu gestalten, das sie mehrsprachig angezeigt werden kann. Damit die Seite weiß, welche Sprache der Benutzer haben möchte, lass ich ein Cookie anlegen der den Inhalt der Sprache übermittelt und in der Variable $language speichert. Den Text für die Website speicher ich in der Datenbank (Aufbau der Datenbank siehe Bild1). Nun versuche ich das er den Inhalt von Schlüssel ([name]) zusammen mit dem Text in einem Array abspeichert. Soweit klappt das auch (Code bei Beispiel 1). Nun hab ich aber das Problem, das er für jeden Eintrag einen eigenen Array erzeugt (siehe Bild 2), ich möchte allerdings das er das in einem Array packt (siehe Bild 3). Versucht hab ich es schon mit array_combine und array_merge bzw array_merge_recursive bin aber nicht zum gewünschten Ergebnis gekommen.
Bild 1: Aufbau der Datenbank:

Beispiel 1:
Bild 2: Ausgabe im Browser:

Bild 3: So würd ich es gerne haben:

Ich versuch derzeit meine Website so zu gestalten, das sie mehrsprachig angezeigt werden kann. Damit die Seite weiß, welche Sprache der Benutzer haben möchte, lass ich ein Cookie anlegen der den Inhalt der Sprache übermittelt und in der Variable $language speichert. Den Text für die Website speicher ich in der Datenbank (Aufbau der Datenbank siehe Bild1). Nun versuche ich das er den Inhalt von Schlüssel ([name]) zusammen mit dem Text in einem Array abspeichert. Soweit klappt das auch (Code bei Beispiel 1). Nun hab ich aber das Problem, das er für jeden Eintrag einen eigenen Array erzeugt (siehe Bild 2), ich möchte allerdings das er das in einem Array packt (siehe Bild 3). Versucht hab ich es schon mit array_combine und array_merge bzw array_merge_recursive bin aber nicht zum gewünschten Ergebnis gekommen.
Bild 1: Aufbau der Datenbank:

Beispiel 1:
PHP-Code:
<?php
$languageStmt = "SELECT `id`, `name`, `".$language."` FROM `language` ORDER BY `id`";
foreach($pdo->query($languageStmt) as $languageDB) {
$output = array_slice($languageDB, -3, 1);
$output2 = array_slice($languageDB, -2, 1);
$test = array_combine($output, $output2);
print_r('<pre>');
print_r($test );
print_r('</pre>');
}
?>

Bild 3: So würd ich es gerne haben:



Kommentar