Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/haskell/10.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
PHP数字分隔符,setlocale_Php_Locale_Setlocale - Fatal编程技术网

PHP数字分隔符,setlocale

PHP数字分隔符,setlocale,php,locale,setlocale,Php,Locale,Setlocale,我最近遇到了一个非常有趣的问题。我在一个网站上有以下代码来生成一个由10位数字组成的数字,后面是句号(.),后面是2到4位数字。我还使用gettext函数将页面翻译成另外两种不同的语言 <?php $lang = "en_UK"; putenv("LC_ALL=$lang"); setlocale(LC_ALL, $lang); bindtextdomain("messages", "locale"); bind_textdoma

我最近遇到了一个非常有趣的问题。我在一个网站上有以下代码来生成一个由10位数字组成的数字,后面是句号(.),后面是2到4位数字。我还使用gettext函数将页面翻译成另外两种不同的语言

<?php
      $lang = "en_UK";
      putenv("LC_ALL=$lang");
      setlocale(LC_ALL, $lang);
      bindtextdomain("messages", "locale");
      bind_textdomain_codeset('messages', 'UTF-8');
      textdomain("messages");

      list($usec, $sec) = explode(" ",microtime());
      $my_number = ((float)$usec + (float)$sec + (float)rand(1, 100000000));
?>
      <form method ="POST" action="">
          <input type="hidden" value="<?php echo $my_number; ?>"/>
          <input type="submit"/>
      </form>


不同的国家对如何写数字有不同的习惯。更改您的程序使用的约定。

不同的国家对如何书写数字有不同的约定。更改程序使用的约定。

好吧,这就解释了一切。谢谢!!!!就你所知。。。有没有办法避免这种特殊的行为而不发疯@iosononando:你可能需要搜索或问另一个问题。我不在PHP中工作,也不能建议在PHP中使用多个区域设置。这次我将围绕这个问题进行讨论。再次感谢!这是一个老问题,但解决方法可能是只设置
LC\u消息
,或者将
LC\u数值
区域设置重置为
en
。这就解释了所有问题。谢谢!!!!就你所知。。。有没有办法避免这种特殊的行为而不发疯@iosononando:你可能需要搜索或问另一个问题。我不在PHP中工作,也不能建议在PHP中使用多个区域设置。这次我将围绕这个问题进行讨论。再次感谢!这是一个老问题,但解决方法可能是只设置
LC\u消息
,或者将
LC\u数值
区域设置重置为
en