[PHP] werkt gettext LC_MESSAGES onder windows?

Pagina: 1
Acties:
  • 138 views sinds 30-01-2008
  • Reageer

Onderwerpen


Acties:
  • 0 Henk 'm!

Verwijderd

Topicstarter
Ik zet de locale voor gettext met:
PHP:
1
putenv( 'LC_MESSAGES=' . $locale );


Deze wordt goed geset, getenv() laat de juiste locale zien.

Echter doet gettext hier niets mee.
Wanneer ik LC_ALL gebruik werkt dit correct, gettext vertaald zoals verwacht. Bij LC_MESSAGES wordt er niets vertaald.

Mijn vermoeden is dat gettext onder windows niets doet met LC_MESSAGES. Echter heb ik dit nergens kunnen vinden. Iemand enig idee of dit daadwerkelijk zo is, of dat ik iets over het hoofd zie?

Situatie:
php 5.2.3, Apache 2 op windows omgeving

Acties:
  • 0 Henk 'm!

  • BtM909
  • Registratie: Juni 2000
  • Niet online

BtM909

Watch out Guys...

Krijg je uberhaupt errors terug?

Daarnaast kom ik dit tegen:
For all Windows-Users:
Be warned the LC_MESSAGES seems to be NOT set on Windows with PHP 5.1.2, so if you develope applications for a Linux-System and want to make it multi-language using gettext, you will get problems using LC_MESSAGES on your Windows-Developement-Box.
You can try to solve this problem by putting a

<?php if (!defined('LC_MESSAGES')) define('LC_MESSAGES', 6); ?>

Ace of Base vs Charli XCX - All That She Boom Claps (RMT) | Clean Bandit vs Galantis - I'd Rather Be You (RMT)
You've moved up on my notch-list. You have 1 notch
I have a black belt in Kung Flu.


Acties:
  • 0 Henk 'm!

Verwijderd

Topicstarter
Ik krijg helemaal geen errors. De vars staan zoals verwacht, alleen pakt gettext het niet op.

Je quote gaat over de LC_MESSAGES constante bij setlocale(). Onder windows kan de locale dmv putenv() geset worden. Dat werkt perfect voor LC_ALL.

Acties:
  • 0 Henk 'm!

Verwijderd

Topicstarter
op http://nl3.php.net/manual/en/function.setlocale.php vond ik:

LC_MESSAGES for system responses (available if PHP was compiled with libintl)

Die dll (libintl) miste ik (zat niet in standaard WAMP distro). Nu ik die heb, werkt het.