PHP-Sprachweiche mit Adresszeilen-Parameter (index.html?lang=en)
Andreas
- php
0 Matt0 Shadowcrow0 EKKi
Hallo,
ich möchte eine Webpräsenz durchgehend dreisprachig gestalten (de, en, fr). Wenn eine Seite ohne Parameter in der Adressleiste eingegeben wird, soll sie auf Deutsch kommen, wenn ein Parameter lang=en bzw. lang=fr eingegeben wird, soll sie auf Englisch bzw. Französisch angezeigt werden. Dadurch kann ich die Inhalte jwls. in eine HTML-Datei (bzw. ja eigentlich PHP-Datei) schreiben. Kann mir jemand kurz erklären, wie man das am besten macht? Wie lese ich den Parameter aus und wie gestalte ich den Quelltext effizient? Kurzes Beispiel wäre super!
Im Quellcode soll also sowas folgender Art stehen:
...
<body>
<?php
if lang=en { ausgabe("
<h1>Headline</h1>
<p>english</p>") }
elseif lang=fr { ausgabe("...") }
else {ausgabe ("<p>deutsch</p>"); }
?>
</body>
...
Kann mir jemand kurz erklären, wie man das am besten macht?
Die Suche benutzen?
Kurzes Beispiel wäre super!
Wird dir die Suche 100%ig erklären.
Wird dir die Suche 100%ig erklären.
Die Suche besteht den Turingtest nicht. Ich habe nichts über Sprachweichen mittels Parameterangabe gefunden. Wäre über eine kurze Antwort sehr dankbar.
Andreas
Mahlzeit,
Die Suche besteht den Turingtest nicht. Ich habe nichts über Sprachweichen mittels Parameterangabe gefunden. Wäre über eine kurze Antwort sehr dankbar.
Vielleicht ist auch einfach nur der Begriff "Sprachweiche" ungewöhnlich? Was sagt denn Dein Freund dazu? Wie wär's, wenn Du einfach gebräuchlichere Synonyme wie z.B. "mehrsprachig" o.ä. benutzt?
MfG,
EKKi
Hallo Andreas,
das Thema "Sprachweiche" (nennen wir es einfach mal so) ist ziemlich komplex. Die Lösung hängt stark von Deinem Vorhaben und der Größe der Webpräsenz ab.
Wenn die Webpräsenz genau aus einer einzigen Seite besteht mag ein if/elseif/else-Konstrukt oder auch switch genügen.
Sobald mehrere Seiten dranhängen, musst Du dran denken die Sprache an jeden Link zu übergeben (bitte immer mit $_GET arbeiten). Du kannst aber auch, um das Anhängen zu vermeiden mit Sessions arbeiten.
Du kannst die Inhalte Deiner Page mit Hilfe einer Datenbank füllen und nur die gebrauchte Sprache "SELECT"en. Du kannst aber auch Sprachdateien auslagern... Die Frage ist, ob die Inhalte statisch oder dynamisch sind, also einfach zu ändern sein sollen...
Du siehst: Es ist schwierig Dir einfach irgendeine Lösung zu nennen...
Gruß, Samoht
hi $name,
da ich gerade in switches verliebt bin *g*:
z.b. so:
switch ($lang) {
case "eng":
echo 'englischer kram';
break 1;
case "de":
echo 'deutscher kram';
break 1;
default:
echo 'deutscher kram';;
break 1;
}
gruss
shadow
Mahlzeit,
z.b. so:
Nö. So nicht. So müsstest Du den "deutschen Kram" redundant in der Datei haben.
switch ($lang) {
case 'en':
echo 'englischer Kram';
break;
default:
echo 'deutscher Kram';
}
reicht völlig aus (ggf. um weitere Sprachen erweitert).
MfG,
EKKi
hi $name,
Nö. So nicht. So müsstest Du den "deutschen Kram" redundant in der Datei haben.
uups, stimmt *schäm* klarer fall von geistigem tiefflug :-)
gruss
shadow