php.de

Zurück   php.de > php.de Intern > Off-Topic Diskussionen

Off-Topic Diskussionen Mach mal Pause vom Programmieren!

Antwort
 
LinkBack Themen-Optionen Thema bewerten
Alt 31.10.2010, 10:53  
Erfahrener Benutzer
 
Benutzerbild von bitsnack
 
Registriert seit: 01.08.2010
Beiträge: 352
PHP-Kenntnisse:
Fortgeschritten
bitsnack befindet sich auf einem aufstrebenden Ast
bitsnack eine Nachricht über ICQ schicken bitsnack eine Nachricht über MSN schicken bitsnack eine Nachricht über Skype™ schicken
Standard Mehrsprachigkeit: Alias, ja oder nein?

Hallo,

Ich suche eine 2. Meinung zur Umsetzung eines mehrsprachigen Frontends.
Es existieren theoretisch 2 Dateien: eine für Nachrichten (messages.php) und eine für die Übersetzungen (z.B. de.php). Die Frage ist jetzt ob es nützlich oder nötig wäre Nachrichten wie logout, login failed, successfully saved etc. nicht nur in der de.php zu übersetzen, sondern ihnen auch noch in der messages.php einen Alias zu geben.
Beispiel:
message.php: array('logout' => 'logout', 'login_failed' => 'login failed', 'saved' => 'successfully saved!')
de.php: array('logout' => 'abmelden', 'login failed!' => 'Anmeldung fehlgeschlagen', 'successfully saved!' => 'erfolgreich gespeichert!')

Meiner Meinung nach ist der Alias bei simplen Wörtern wie "logout" nicht nötig aber bei "login failed" vielleicht nützlich um das Risiko, eine andere Formulierung als in der Übersetzung zu wählen und damit die Übersetzung zu umgehen, zu minimieren.

Wie seht ihr das? Und wie sieht es mit der Übersetzung von Menüpunkten aus? Mit oder ohne Alias?

Vielen Dank im Voraus!
bitsnack ist offline   Mit Zitat antworten
Sponsor Mitteilung
PHP Code Flüsterer

Registriert seit: 21.08.2005
Beiträge: 4682
PHP-Kenntnisse:
Fortgeschritten

Alt 31.10.2010, 14:29  
moderatives Dielektrikum
 
Benutzerbild von nikosch
 
Registriert seit: 21.05.2008
Beiträge: 35.987
PHP-Kenntnisse:
Fortgeschritten
nikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunft
Standard

Was heißt Alias? Ich würde das als Schlüssel bezeichnen.
Und, ja, ich würde auf jeden Fall einen benutzen, weil Du vielleicht ja mal zwei Kontexte hast, in denen eine andere Übersetzung für das selbe Fragment notwendig ist. Dann kannst Du bspw. für den jeweiligen Kontext ein zusätzliches Prefix einführen.
__________________
--
One pixel is still too big. Please make it smaller. ASAP.

Initiative Mittelstand.
Die wichtigste Gestaltungsregel im Screendesign ist Pi mal Daumen des Arbeitgebers.
--
nikosch ist offline   Mit Zitat antworten
Alt 31.10.2010, 17:26  
Erfahrener Benutzer
 
Benutzerbild von bitsnack
 
Registriert seit: 01.08.2010
Beiträge: 352
PHP-Kenntnisse:
Fortgeschritten
bitsnack befindet sich auf einem aufstrebenden Ast
bitsnack eine Nachricht über ICQ schicken bitsnack eine Nachricht über MSN schicken bitsnack eine Nachricht über Skype™ schicken
Standard

Ein Beispiel: mit $message = message('backend/general', 'login_failed') rufe ich die Nachricht für das fehlgeschlagene Login im Backend ab, allerdings auf Englisch. Mit __($message) übersetze ich das dann in die entsprechende Sprache. Der einzige Vorteil dabei ist eben, dass man, wen man die selbe Nachricht mehrere Male benötigt, sich nicht in der Formulierung "irren" kann. Dann würde ja die falsche und nicht übersetzte Formulierung nicht übersetzt werden...
bitsnack ist offline   Mit Zitat antworten
Alt 02.11.2010, 12:18  
Erfahrener Benutzer
 
Registriert seit: 30.07.2008
Beiträge: 1.167
PHP-Kenntnisse:
Fortgeschritten
xm22 sorgt für eine eindrucksvolle Atmosphärexm22 sorgt für eine eindrucksvolle Atmosphärexm22 sorgt für eine eindrucksvolle Atmosphäre
Standard

Zitat:
rufe ich die Nachricht für das fehlgeschlagene Login im Backend ab, allerdings auf Englisch. Mit __($message) übersetze ich das dann in die entsprechende Sprache.
Den Zwischenschritt kann man sich auch sparen. Das macht nur Schreibarbeit. Mach das doch lieber gleich so (Und ich würde die Trennung "Namespace" und Schlüssel gelich mit aufheben - Wozu soll das gut sein?
PHP-Code:
__('backend/general/login_failed'
Als zusätzliches Feature könnte man machen, dass, wenn eine entsprechende Übersetzung fehlt, man evtl. eine Fallback-Sprache festlegt, die dann genommen wird. Aber das hängt vom Anwendungsfall ab.
xm22 ist offline   Mit Zitat antworten
Alt 02.11.2010, 14:41  
Erfahrener Benutzer
 
Benutzerbild von bitsnack
 
Registriert seit: 01.08.2010
Beiträge: 352
PHP-Kenntnisse:
Fortgeschritten
bitsnack befindet sich auf einem aufstrebenden Ast
bitsnack eine Nachricht über ICQ schicken bitsnack eine Nachricht über MSN schicken bitsnack eine Nachricht über Skype™ schicken
Standard

Genau das war meine Frage, ob man sich den Zwischenschritt nicht sparen könnte. Aber was passiert wenn man einen Satz ändert? Dann muss man es überall ändern.
Die Klassen für die Übersetzung sind schon von Kohana vorhanden, ich war mir nur bei der Verwendung unsicher, denke aber ich werde es mit Zwischenschritt machen, ausser jemand hat ein gutes Argument dagegen.

Vielen Dank soweit!
bitsnack ist offline   Mit Zitat antworten
Alt 02.11.2010, 15:32  
Erfahrener Benutzer
 
Registriert seit: 30.07.2008
Beiträge: 1.167
PHP-Kenntnisse:
Fortgeschritten
xm22 sorgt für eine eindrucksvolle Atmosphärexm22 sorgt für eine eindrucksvolle Atmosphärexm22 sorgt für eine eindrucksvolle Atmosphäre
Standard

Zitat:
Aber was passiert wenn man einen Satz ändert?
? Wenn sich ein Satz ändert, hat das doch nichts mit der Applikation zu tun. Das sollte doch dann nur in der Sprachdatei geändert werden.
xm22 ist offline   Mit Zitat antworten
Alt 02.11.2010, 15:56  
moderatives Dielektrikum
 
Benutzerbild von nikosch
 
Registriert seit: 21.05.2008
Beiträge: 35.987
PHP-Kenntnisse:
Fortgeschritten
nikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunft
Standard

Zitat:
Aber was passiert wenn man einen Satz ändert?
Wo ist der Unterschied, ob man dann __() anpasst oder die Anforderung?
__________________
--
One pixel is still too big. Please make it smaller. ASAP.

Initiative Mittelstand.
Die wichtigste Gestaltungsregel im Screendesign ist Pi mal Daumen des Arbeitgebers.
--
nikosch ist offline   Mit Zitat antworten
Alt 02.11.2010, 19:13  
Erfahrener Benutzer
 
Benutzerbild von bitsnack
 
Registriert seit: 01.08.2010
Beiträge: 352
PHP-Kenntnisse:
Fortgeschritten
bitsnack befindet sich auf einem aufstrebenden Ast
bitsnack eine Nachricht über ICQ schicken bitsnack eine Nachricht über MSN schicken bitsnack eine Nachricht über Skype™ schicken
Standard

Beispiel ohne Alias:
__('Yay! Login was successfull!');

Beispiel mit Alias:
__('backend/login', 'login_successfull');

Und jetzt möchte ich den Text der Nachricht ändern.
Ohne Alias muss ich es an jeder eingesetzten Stelle ändern:
__('Access granted!');

Mit Alias bleibt alles gleich, da ich nur den Text der dem Alias zugeordnet wird ändern muss und zur Ausgabe nur der Alias genutzt wird:
__('backend/login', 'login_successfull');
bitsnack ist offline   Mit Zitat antworten
Alt 02.11.2010, 22:21  
moderatives Dielektrikum
 
Benutzerbild von nikosch
 
Registriert seit: 21.05.2008
Beiträge: 35.987
PHP-Kenntnisse:
Fortgeschritten
nikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunft
Standard

Wie gesagt, was Du beschreibst würde ich einfach als Schlüssel beschreiben. Und - klar ist das die bessere Variante.
Zitat:
Ohne Alias muss ich es an jeder eingesetzten Stelle ändern:
__('Access granted!');
Ja, weil Du ja den Schlüssel änderst, nicht den Text. So gesehen erzeugst Du allenfalls einen Spezialfall, in dem in der Default-Sprache der Text dem Schlüssel entspricht. Das ist natürlich nicht sehr flexibel.
__________________
--
One pixel is still too big. Please make it smaller. ASAP.

Initiative Mittelstand.
Die wichtigste Gestaltungsregel im Screendesign ist Pi mal Daumen des Arbeitgebers.
--
nikosch ist offline   Mit Zitat antworten
Alt 03.11.2010, 09:52  
Erfahrener Benutzer
 
Registriert seit: 30.07.2008
Beiträge: 1.167
PHP-Kenntnisse:
Fortgeschritten
xm22 sorgt für eine eindrucksvolle Atmosphärexm22 sorgt für eine eindrucksvolle Atmosphärexm22 sorgt für eine eindrucksvolle Atmosphäre
Standard

Zitat:
Mit Alias bleibt alles gleich, da ich nur den Text der dem Alias zugeordnet wird ändern muss und zur Ausgabe nur der Alias genutzt wird:
__('backend/login', 'login_successfull');
Das habe ich doch geschrieben. Was ich meinte ist, dass Du keinen Zwischenschritt brauchst, um Dir einen Alias zu holen.
xm22 ist offline   Mit Zitat antworten
Antwort


Themen-Optionen
Thema bewerten
Thema bewerten:

Forumregeln
Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are an
Gehe zu

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
[Erledigt] Tabellen Alias im Ergebnis einer Mysqli Abfrage stoffel70 Datenbanken 3 18.05.2010 08:32
[Erledigt] SQL Alias für entweder den einen oder den anderen wert. dunst0 Datenbanken 1 31.08.2009 22:19
Fehler beim kompilieren von php 5.2.9 malio Server, Hosting und Workstations 11 05.06.2009 18:40
[Erledigt] Zahl (alias) in Schleife als definiertes Wort umwandeln fulltilt PHP Tipps 2009 8 15.03.2009 16:47
echter Alias einer Funktion Salkin PHP Tipps 2008 25 03.12.2008 13:41
mySQL Alias kann nicht ausgegeben werden Tarcon Datenbanken 11 26.11.2008 14:57
SQL auf Alias Select Mnemonic Datenbanken 10 21.11.2008 14:26
login alias htaccess devilofcrash PHP Tipps 2008 13 13.09.2008 22:07
Mod Alias Zergling-new Server, Hosting und Workstations 1 20.04.2008 10:00
is_writeable alias von is_writable... brian johnson Off-Topic Diskussionen 2 22.11.2007 22:06
delete sicherheit Dilandau Server, Hosting und Workstations 8 15.12.2005 17:18
[Erledigt] Irgendein Join oder doch nur GROUP ??? Datenbanken 7 12.10.2005 13:08
Zugriff auf File in Alias Verz:403 Forbidden error,no access Server, Hosting und Workstations 3 11.05.2005 17:21
CGI - Apache - Vhost - Suexec ??? Server, Hosting und Workstations 1 15.09.2004 13:25
Alias von Feldnamen setzen ? Tscheggi Datenbanken 6 30.07.2004 19:47

Besucher kamen über folgende Suchanfragen bei Google auf diese Seite
was heisst alias, was heißt alias, mehrsprachigkeit ja oder nein, php mehrsprachigkeit, was heist alias, einloggen ohne alias, mehrsprachigkeit ja nein?, andere formulierung für nein, sql alias, php array intern alias, php aliases setzen

Alle Zeitangaben in WEZ +2. Es ist jetzt 14:12 Uhr.




Powered by vBulletin® Version 3.7.2 (Deutsch)
Copyright ©2000 - 2012, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO 3.2.0
Aprilia-Forum, Aquaristik-Forum, Liebeskummer-Forum, Zierfisch-Forum, Geizkragen-Forum