ÓÃphp gettext¿âÀ´¿ª·¢¶àÓïÑÔϵͳ
ͨ³£ÈËÃÇд³ÌÐòʱ¶¼Êǽ«ÎÄ×ÖдËÀÔÚ³ÌÐòÀïµÄ£¬±ÈÈ磺echo "Hello
World!";
£¬¼ÙÈçÒª¸Ä³ÉËü¹úÓïÑÔ£¬Ð´¹ú¼Ê»¯³ÌÐò£¬¾ÍÒªÖð¸ö´ò¿ª½øÐÐÐ޸쬳ÌÐò½Ï¶Ìʱ»¹ÐУ¬Èô³ÌÐòÓÐÉÏÍòÉõÖÁ¸ü¶à£¬¸ÄÆðÀ´¾Í²»ÊÇÄÇôÈÝÒ×ÁË¡£½üÀ´Ëæ×Åi18nµÄÖð½¥±ê
×¼»¯£¬ÎÒÒ²À´½²Ò»½²ÔÚPHPÖÐÈçºÎʵÏÖ¹ú¼Ê»¯Ö§³Ö¡£¸úÆäËû³ÌÐòÓïÑÔÒ»Ñù£¬ÔÚ PHP Ò²¿ÉÒÔÀûÓà gettext Ì×¼þд×÷ i18n ³ÌÐò£¬ÊµÏÖ
NLS(Native Language Support) ¹ú¼Ê»¯Ö§³Ö¡£
ʵÏÖÁ÷³Ì£º³ÌÐòÉè¼ÆÕßÔÚ³ÌÐòÂëÖÐдÈëËùÒªÏÔʾµÄÐÅÏ¢£¬ÔÚÔËÐгÌÐòʱ²¢²»»áÖ±½ÓÏÔʾ³ÌÐòÉè¼ÆÊ¦ËùдµÄÐÅÏ¢£¬¶ø»áÏÈÈ¥ÕÒÒ»¸öËùÉèÖÃÓïϵµÄÐÅÏ¢µµ¡£Èç¹ûδÕÒµ½£¬²Å»áÈ¥ÏÔʾ³ÌʽÂëÖеÄÐÅÏ¢¡£
¡¡¡¡Ò»¡¢°²×°ÉèÖÃgettextÌ×¼þ£º
windowsϵͳ:
¡¡¡¡1¡¢´ò¿ªphp.iniµµ£¬²éÕÒextension=php_gettext.dll£¬È¥µôÇ°ÃæµÄ“;”
¡¡¡¡2¡¢±£´æ£¬È»ºórestart server¡£
¡¡¡¡ÈôÒ»ÇÐ˳Àû£¬¾Í¿ÉÒÔÔÚ phpinfo() Öп´µ½ gettext ×ÖÑù£¬ÖÁ´ËÒÑÉèÖÃÍê±Ï¡£
¶þ¡¢php_gettext.dllÌ×¼þÀïÓкü¸¸öº¯Ê½£¬¾ßÌåÇë¿´Ïà¹ØµÄmanual¡£ÔÚÕâÀïÎÒÃÇÖ»ÓüÇס3¸öº¯Ê½¾ÍÐÐÁË£¬ÈçÏ£º
string bindtextdomain ( string domain, string directory)
string textdomain ( string text_domain)
string gettext ( string message)
¡¡¡¡Èý¡¢Ð´×÷i18n³ÌÐò£º
<?php
// ³£¹æµÄ³ÌÐò
echo
"Hello World!"
);
?>
ÏÂÃæÊÇ i18n ³ÌÐò£ºhello.php
<?php
// I18N ³ÌÐò·¶Àý¿ªÊ¼
define
(
'PACKAGE'
,
'hello'
);
// ¶¨ÒåÒªÓõÄmoÎļþÃû³Æ£¬³£¹æÀ´Ëµ£¬ÎÒÃǶ¼°ÑPACKAGEµÄÃû³Æ¶¨ÒåºÍ³ÌÐòÃû³ÆÏàͬ¡£
putenv
(
'LANG=zh_CN'
);
setlocale
(
LC_ALL
,
'zh_CN'
);
// Ö¸¶¨ÒªÓõÄÓïϵ£¬È磺en_US¡¢zh_CN¡¢zh_TW
bindtextdomain
(
PACKAGE
,
'e:/phpbulo.com/language'
);
textdomain
(
PACKAGE
);
// The .mo file searched is:
// e:/phpbulo.com/language/zh_CN/LC_MESSAGES/hello.mo
echo
gettext
(
"Hello World!"
);
?>
¡¡¡¡ÔÚIEÖÐÊäÈ룺http://localhost/hello.php£¬Êä³ö½á¹ûΪ£º“Hello World!”
¡¡¡¡note£º°´ÕÕ GNU package ÀïÃæµÄϰ¹ß£¬¿ÉÒÔʹÓà _(...) À´´úÌæ gettext(...) £¬ÕâÑù¾Í¿ÉÒÔÉÙ´òºÜ¶à gettext ÁË¡£
¡¡¡¡ËÄ¡¢½ÓÏÂÀ´ÉèÖÃgettext poµµ£º
¡¡¡¡1¡¢´´½¨Ä¿Â¼½á¹¹£¬ÈçÏÂËùʾ£º
¡¡¡¡¡¡¡¡bindtextdomain's dir
¡¡¡¡¡¡¡¡¡¡¡¡/language
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡/LC_MESSAGES
¡¡
Ïà¹ØÎĵµ£º
PHP5ÖÐΪ½â¾ö±äÁ¿µÄÃüÃû³åÍ»ºÍ²»È·¶¨ÐÔÎÊÌ⣬ÒýÈë¹Ø¼ü×Ö“$this”´ú±íÆäËùÔÚµ±Ç°¶ÔÏó¡£
$thisÔÚ¹¹Ô캯ÊýÖÐÖ¸¸Ã¹¹Ô캯ÊýËù´´½¨µÄжÔÏó¡£
ÔÚÀàÖÐʹÓõ±Ç°¶ÔÏóµÄÊôÐԺͷ½·¨£¬±ØÐëʹÓÃ$this->ȡֵ¡£
·½·¨Äڵľֲ¿±äÁ¿£¬²»ÊôÓÚ¶ÔÏ󣬲»Ê¹ÓÃ$this¹Ø¼ü×Öȡֵ¡£
¾Ö²¿±äÁ¿ºÍÈ«¾Ö±äÁ¿Óë $this ¹Ø¼ü×Ö,ʹÓõ±Ç°¶ÔÏóµ ......
<p>³éÏóÀàʵÏÖ½Ó¿Ú£¬¿ÉÒÔ²»ÊµÏÖÆäÖеijéÏó·½·¨£¬¶ø½«³éÏó·½·¨µÄʵÏÖ½»¸¶¸ø¾ßÌåÄܱ»ÊµÀý»¯µÄÀàÈ¥´¦Àí¡£</p>
<textarea name="code" class="php">
<?php
interface User
{
function getName();
function setName($_name);
}
//´Ë´¦Ö»ÊÇʵÏÖÁËÒ»¸ö½Ó¿ÚµÄÒ»¸ö·½·¨
abstract cl ......
PHPÊÇÈõÀàÐÍÓïÑÔ£¬Ïò·½·¨´«µÝ²ÎÊýʱºòÒ²²»Ì«Çø·ÖÀàÐÍ¡£ÕâÑùµÄʹÓûáÒýÆðºÜ¶àµÄÎÊÌ⣬PHP¿ª·¢ÕßÈÏΪ£¬ÕâЩÎÊÌâÓ¦¸ÃÊÇÓÉ´úÂëÊéдÕßÔÚÊéд´úÂëʱ½øÐмìÑéÒÔ±ÜÃ⡣ûÓÐÀàÐÍÌáʾºÜΣÏÕ¡£
<?php
class NormalUser
{
/*
* ÆäËüÏà¹Ø´úÂë..Ê¡ÂÔ........
*/
private $age;
public function setAge($_age) {
$this- ......
http://blog.csdn.net/microji/archive/2008/12/19/3551042.aspx
×öÒ»¸öÊ×Ò³µ÷ÓÃͼÏñ£¬ÓÐʱºòÍùÍùÐèÒª»ñµÃ¹Ì¶¨´óСµÄͼÏñ£¬ÒòΪÊ×Ò³µÄͼÏñλÖÃͨ³£ÓÉÉè¼ÆÈËÔ±Ö¸¶¨ºÃÁË£¬Èç¹ûÊÇ×ö×îз¢²¼Í¼Ïñµ÷Óã¬ÒòΪ²»ÖªµÀ¿Í»§»áÉÏ´«Ê²
ô±ÈÀýµÄͼÏñ£¬ËùÒÔ£¬ÓÐʱºòÒ²¾ÍûÓа취ȷ¶¨Í¼ÏñµÄ±ÈÀý£¬Ç°Ì¨Ò³Ãæ±àдÈËԱͨ³£»á²ÉÓù̶¨ i ......
Ò».»·¾³µÄ°²×°
ÏÂÔØ°²×°°ü£¬GoogleÉÏËÑË÷php+apache+sqlµÄ°²×°°ü²¢°²×°¡£
¶þ.À©Õ¹±à³Ì
Õë¶ÔÔÚPHP»·¾³ÏµôÓÃC±à³Ì(c³ÌÐò±àÒëµÄdll)£¬Ö÷ÒªÓÐÒÔÏÂÁ½ÖÖ·½Ê½¡£
1.ÀûÓÃATL¹¹½¨DLL×é¼þ£¬È»ºóÔÙPHPÀïÃæÖ±½Óµ÷Ó㬵÷Ó÷½·¨ ......