php gettext extension
- oldholborn
- Kilobyte level
- Posts: 270
- Joined: Tue Apr 18, 2006 11:40 am
php gettext extension
γειά σας
έβαλα php και apache2 σε windows xp
αλλά δεν ξέρω πως να χρησιμοποιήσω το extension php_gettext.dll
δεν είναι comment στο php.ini και έχω προσθέσει το c:/php5 στο
path και στο php.ini extesion_dir είναι σωστό ,το πρόσθεσα στο system32 php_gettext.dll
πως χρησιμοποείτε ,στο internet λένε xgettext file
το κάνω αυτό ,και βγάζει μήνυμα ότι δεν το αναγνωρίζει
ξέρετε πως γίνεται
έβαλα php και apache2 σε windows xp
αλλά δεν ξέρω πως να χρησιμοποιήσω το extension php_gettext.dll
δεν είναι comment στο php.ini και έχω προσθέσει το c:/php5 στο
path και στο php.ini extesion_dir είναι σωστό ,το πρόσθεσα στο system32 php_gettext.dll
πως χρησιμοποείτε ,στο internet λένε xgettext file
το κάνω αυτό ,και βγάζει μήνυμα ότι δεν το αναγνωρίζει
ξέρετε πως γίνεται
- Sreak
- Venus Project Founder
- Posts: 956
- Joined: Fri Apr 02, 2004 9:56 am
- Academic status: PhD
- Location: eltrun.gr
Re: php gettext extension
Νομίζω πως χρειάζεται και αυτό για να παίξει gnu_gettext.dll
Ριξε μια μιατια και εδώ μήπως σε βοηθήσει http://www.apachelounge.com/forum/viewtopic.php?t=897
Και όσον αφορά τα paths για τα extensions, μήπως χρειάζεται να κάνεις καμιά δοκιμή http://www.phpbuilder.com/board/archive ... 93605.html
Ριξε μια μιατια και εδώ μήπως σε βοηθήσει http://www.apachelounge.com/forum/viewtopic.php?t=897
Και όσον αφορά τα paths για τα extensions, μήπως χρειάζεται να κάνεις καμιά δοκιμή http://www.phpbuilder.com/board/archive ... 93605.html
- oldholborn
- Kilobyte level
- Posts: 270
- Joined: Tue Apr 18, 2006 11:40 am
Re: php gettext extension
ευχαριστώ Sreak το κατέυασα και το έβαλα στο system32 τώρα με το gettext δεν υπάρχει πρόβλημαSreak wrote:Νομίζω πως χρειάζεται και αυτό για να παίξει gnu_gettext.dll
αλλά το xgettext πως να το χρησιμοποιήσω ?
- oldholborn
- Kilobyte level
- Posts: 270
- Joined: Tue Apr 18, 2006 11:40 am
Re: php gettext extension
το προπάθησα στο windows δεν δουλεύει με τίποτα
στο ubuntu δουλεύει απο αγγλικά προς ελληνικά
<?php
bindtextdomain('messages', './');
textdomain('messages');
switch ($_GET['l']) {
case 'el':
setlocale(LC_ALL,'el_GR');
break;
case 'en':
default:
setlocale(LC_ALL,'en_US');
break;
}
echo _('Hello World');
?>
αλλά το αντίθετο δεν δουλευει
<?php
bindtextdomain('messages', './');
textdomain('messages');
switch ($_GET['l']) {
case 'el':
setlocale(LC_ALL,'el_GR');
break;
case 'en':
setlocale(LC_ALL,'en_US');
break;
}
echo _('ΓΕΙΑ ΣΑΣ');
?>
στο ubuntu δουλεύει απο αγγλικά προς ελληνικά
<?php
bindtextdomain('messages', './');
textdomain('messages');
switch ($_GET['l']) {
case 'el':
setlocale(LC_ALL,'el_GR');
break;
case 'en':
default:
setlocale(LC_ALL,'en_US');
break;
}
echo _('Hello World');
?>
αλλά το αντίθετο δεν δουλευει
<?php
bindtextdomain('messages', './');
textdomain('messages');
switch ($_GET['l']) {
case 'el':
setlocale(LC_ALL,'el_GR');
break;
case 'en':
setlocale(LC_ALL,'en_US');
break;
}
echo _('ΓΕΙΑ ΣΑΣ');
?>
- Sreak
- Venus Project Founder
- Posts: 956
- Joined: Fri Apr 02, 2004 9:56 am
- Academic status: PhD
- Location: eltrun.gr
Re: php gettext extension
Ψάξου λίγο με encodings και locales για τέτοιου είδους πρόβλημα μου κάνει.
- oldholborn
- Kilobyte level
- Posts: 270
- Joined: Tue Apr 18, 2006 11:40 am
Re: php gettext extension
για να μπορέσου να γραψω ελληνικά στο vim :
LANG=el_GR
και μετα
xgettext index.php
βγάζει μήνυμα
Non-ASCII string at index.php:12. Please specify the source encoding through --from-codetext file.php
και μετα
xgettext --from el_GR index.php
βγάζει το ίδιο μήνυμα και μετα
xgettext --from iso-8859-7 index.php (εδω δουλευει)
παράγει το messages.po και μετά ανοίγω το messages.po
και έχει :
#: index.php:12
msgid "γΡια"
msgstr "hello" (το hello το πρόσθεσα εγω)
και μετα
msgfmt messages.po
και πράγει το messages.mo
και μετά τα μεταφέρω (messages.*) στο en/LC_messages/
και μετα ανοίγω το browser
index.php?l=en και index.php?l=el το ίδιο τυπώνουν ένα (Γεια)
LANG=el_GR
και μετα
xgettext index.php
βγάζει μήνυμα
Non-ASCII string at index.php:12. Please specify the source encoding through --from-codetext file.php
και μετα
xgettext --from el_GR index.php
βγάζει το ίδιο μήνυμα και μετα
xgettext --from iso-8859-7 index.php (εδω δουλευει)
παράγει το messages.po και μετά ανοίγω το messages.po
και έχει :
#: index.php:12
msgid "γΡια"
msgstr "hello" (το hello το πρόσθεσα εγω)
και μετα
msgfmt messages.po
και πράγει το messages.mo
και μετά τα μεταφέρω (messages.*) στο en/LC_messages/
και μετα ανοίγω το browser
index.php?l=en και index.php?l=el το ίδιο τυπώνουν ένα (Γεια)
- oldholborn
- Kilobyte level
- Posts: 270
- Joined: Tue Apr 18, 2006 11:40 am
Re: php gettext extension
τώρα εάν πάω στο messages.po και αλλάζω το msgid "γΡια"
σε msgid "γεια"
στο msgfmt messages.po λεει
en/LC_MESSAGES/messages.po:20:8: invalid multibyte sequence
en/LC_MESSAGES/messages.po:20:9: invalid multibyte sequence
en/LC_MESSAGES/messages.po:20:10: invalid multibyte sequence
en/LC_MESSAGES/messages.po:20:11: invalid multibyte sequence
σε msgid "γεια"
στο msgfmt messages.po λεει
en/LC_MESSAGES/messages.po:20:8: invalid multibyte sequence
en/LC_MESSAGES/messages.po:20:9: invalid multibyte sequence
en/LC_MESSAGES/messages.po:20:10: invalid multibyte sequence
en/LC_MESSAGES/messages.po:20:11: invalid multibyte sequence
- Sreak
- Venus Project Founder
- Posts: 956
- Joined: Fri Apr 02, 2004 9:56 am
- Academic status: PhD
- Location: eltrun.gr
Re: php gettext extension
Επομένως από όσο καταλαβαίνω είνα θέμα encoding σωστά?
Δεν δοκιμάζεις να αλλάξεις το default_charset στο php.ini
Δεν δοκιμάζεις να αλλάξεις το default_charset στο php.ini
- oldholborn
- Kilobyte level
- Posts: 270
- Joined: Tue Apr 18, 2006 11:40 am
Re: php gettext extension
άλλαξα το default charset στο php5/apache2/php.ini και /php5/cli/php.ini σε iso-8859-7
και έκανα restart στο apache
μετα το xgettext παράγει το ίδιο ( msgid "γΡια" )
και στο browser index.php?l=el και index.php?l=en τυπώνουν και τα δυο (γεια)
και έκανα restart στο apache
μετα το xgettext παράγει το ίδιο ( msgid "γΡια" )
και στο browser index.php?l=el και index.php?l=en τυπώνουν και τα δυο (γεια)