thosecars82 Posted April 12, 2010 Share Posted April 12, 2010 Hello I have a problem. Altough I got gettext working under a remote server environment, I have not got it working yet under a XAMPP installation. I have made sure that gettext is enabled by going to http://localhost and looking into phpinfo. The code is really simple: <? Header( "HTTP/1.1 301 Moved Permanently" ); Header( "Location: http://www.arreglaordenador.com" ); ?> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" /> <title>Untitled Document</title> </head> <body> <?php $language="es_ES"; putenv("LC_ALL=$language"); setlocale(LC_ALL, $language); bindtextdomain("messages", "./locale"); textdomain("messages"); print "<p>"._("This website is written in English")."</p>\n"; ?> </body> </html> Any idea? Thanks Link to comment https://forums.phpfreaks.com/topic/198268-gettext-and-poedit-under-xampp/ Share on other sites More sharing options...
thosecars82 Posted April 13, 2010 Author Share Posted April 13, 2010 Sorry, I just realized that I had not described the problem accurately. The problem is that I have this simple code <? Header( "HTTP/1.1 301 Moved Permanently" ); Header( "Location: http://www.arreglaordenador.com" ); ?> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" /> <title>Untitled Document</title> </head> <body> <?php $language="fr_FR"; putenv("LC_ALL=$language"); setlocale(LC_ALL, $language); bindtextdomain("messages", "./locale"); textdomain("messages"); print "<p>"._("hi! This website is written in English.")."</p>\n"; ?> </body> </html> and no matter what string I set the variable $language with that gettext will always look for a translation in the folder locale\es_ES\LC_MESSAGES whether the language is Spanish (es_ES) or not. For example, in the above code, gettext will not look for the French translation as it should in locale\fr_FR\LC_MESSAGES but it will look for the translation into the folder corresponding to Spanish language, that is to say, locale\es_ES\LC_MESSAGES. Moreover, if gettext does not find the folder locale\es_ES\LC_MESSAGES then it will display the string in the original language(English) even if $language equals "fr_FR" and at the same time there is a locale\fr_FR\LC_MESSAGES folder created and the corresponding messages.mo and messages.po files created in this folder. I made sure that I re-run Apache and MySql under Xampp whenever I change anything in the code but it keeps having this behaviour anyways. Do you have any idea about why only translations in .po files in the Spanish folder locale\es_ES\LC_MESSAGES are considered and not those translations corresponding to other languages and other folders? Thanks in advance. Link to comment https://forums.phpfreaks.com/topic/198268-gettext-and-poedit-under-xampp/#findComment-1040829 Share on other sites More sharing options...
Recommended Posts
Archived
This topic is now archived and is closed to further replies.