setlocale(LC_ALL, 'en_GB.UTF8') not working on windows

前端 未结 2 647
天涯浪人
天涯浪人 2020-12-06 14:42

Why does setlocale(LC_ALL, \'en_GB.UTF8\'); return false on Windows Server 2003 R2 - Zend CE PHP 5.3.5 ?

Function in question: setlocale.

2条回答
  •  北海茫月
    2020-12-06 14:55

    From the PHP Manual:

    The return value of setlocale() depends on the system that PHP is running. It returns exactly what the system setlocale function returns.

    So in your case it returns false because the system returns false. It is likely that the locale you're using is not available on your system.

    A list of setlocale strings supported by Windows is available here. For British English you want eng, english-uk, or uk. Windows doesn't support multi-byte character sets like UTF-8 though; you will probably end up with Windows-1252.

提交回复
热议问题