Mailinglisten-Archive |
hi :) ich h=E4nge moemntan ein wenig was die umsetzung von sprachunabh=E4ngigen skripten angeht. es soll folgendes durchgef=FChrt werden: - ein chat-skript gibt unterschiedliche meldungen aus - jede meldung zeigt dabei verschiedene vom chat generierte dinge an wie username und weitere parameter, die nat=FCrlich bei jeder ausgabe anders sind - der chat selber soll eine default-sprache haben - jeder user soll sich eine sprache einstellen k=F6nnen ich bin jetzt dazu =FCbergegangen kleine sprachschnipsel zu erzeugen mit einzelnen w=F6rtern drin, die leicht austauschbar sind. daraus baue ich mir dann die s=E4tze zusammen und kann so leicht die sprachfiles austauschen. allerdings komme ich da jetzt schon an die grenze, wenn es um nicht deutsch oder nicht englisch geht, also z.b. franz=F6sisch oder norwegisch, wo der satzbau v=F6llig unterschiedlich ist und ich mit meinen kleinen schnipseln nicht weiter komme. jetzt m=F6chte ich also eine recht vern=FCnftige l=F6sung dort einbauen. meine jetzige =FCberlegung ging dahin f=FCr jede ausgabe eine funktion zu schreiben, der die vom chat generierten elemente als parameter zu =FCbergeben und dann als returnvalue den sprachabh=E4ngigen string zu kriegen. das ist allerdings ziemlich aufw=E4ndig und umst=E4ndlich. lieber w=E4re es mir, wenn ich so etwas definieren k=F6nnte: $hasentered=3D'$chatuser hat soeben den raum betreten'; $msgsent=3D'du hast eine nachricht an $msgto geschickt' $msgrec=3D'$msgfrom hat dir um $sentdate folgende nachricht geschickt'; usw. dass ich also nur den text mit zu ersetzenden begriffen drin habe. ich wei=DF aber weder wie genau ich das realisieren soll (au=DFer =FCber dutzende einzelner funktionen f=FCr jeden m=F6glichen satz). ich m=FCsste theoretisch dem kompletten satz oben inklusive der zu ersetzenden begriffe in einer variablen speichern deren inhalt nicht ausgef=FChrt wird und dann zur laufzeit, wenn die entsprechenden parameter vorhanden sind, ein eval r=FCber laufen lassen oder =E4hnliches. das erscheint mir aber alles nicht elegant genug :) wie l=F6st ihr das in euren projekten?
php::bar PHP Wiki - Listenarchive