Php 复制数字格式

Php 复制数字格式,php,Php,我正在寻找一种复制number_format()的方法(它存在于php中) 比如说 1234 => 1,234 10000 => 10,000 1000000 => 100,000 我使用的语言不支持列表/数组/正则表达式,因此我愿意接受任何建议。我以前的代码似乎只适用于10000000(10000000)这样的数字,但当我使用1000这样的数字时,它给出了10,00 php中的一个例子可以很好地工作,所以我可以翻译它 谢谢类似的方法可能会奏效(未经测试): 类似的方法

我正在寻找一种复制number_format()的方法(它存在于php中)

比如说

 1234 => 1,234
 10000 => 10,000
 1000000 => 100,000

我使用的语言不支持列表/数组/正则表达式,因此我愿意接受任何建议。我以前的代码似乎只适用于10000000(10000000)这样的数字,但当我使用1000这样的数字时,它给出了10,00

php中的一个例子可以很好地工作,所以我可以翻译它


谢谢

类似的方法可能会奏效(未经测试):


类似的方法可能有效(未经测试):

另一种方法:

function number_format($num){
  $len=strlen( (string)$num );
  $newnum='';
  for ($i=$len; $i>=0; --$i) {
    $newnum=$num{$i}.$newnum;
    if (!$i%3 && $i) {
      $newnum=','.$newnum;
    }
  }
  return (int)$newnum;
}
另一种方法:

function number_format($num){
  $len=strlen( (string)$num );
  $newnum='';
  for ($i=$len; $i>=0; --$i) {
    $newnum=$num{$i}.$newnum;
    if (!$i%3 && $i) {
      $newnum=','.$newnum;
    }
  }
  return (int)$newnum;
}

这是Kae Verens函数的工作版本

function number_format($num){
  $num=(string)$num;
  $len=strlen($num);
  $newnum='';
  for ($i=0; $i<$len; ++$i) {
    if (($i%3==0) && $i) {
      $newnum=','.$newnum;
    }
    $newnum=$num[$len-$i-1].$newnum;
  }
  return $newnum;
}
函数编号\u格式($num){
$num=(字符串)$num;
$len=strlen($num);
$newnum='';

对于($i=0;$i,这里是Kae Verens函数的工作版本

function number_format($num){
  $num=(string)$num;
  $len=strlen($num);
  $newnum='';
  for ($i=0; $i<$len; ++$i) {
    if (($i%3==0) && $i) {
      $newnum=','.$newnum;
    }
    $newnum=$num[$len-$i-1].$newnum;
  }
  return $newnum;
}
函数编号\u格式($num){
$num=(字符串)$num;
$len=strlen($num);
$newnum='';


对于($i=0;$i您使用的是什么语言?什么语言?它能做什么?(计算数字/chr?如果它有>=4,则在每3个数字后插入逗号。它能做到吗?)您可以随时查看PHP源代码中的数字格式(),是用不支持列表、数组或正则表达式的C语言编写的?您正在编写8086汇编程序吗?您现有的代码是什么样子的?您使用的是什么语言?什么语言?它可以做什么?(计算数字/chr?如果它大于等于4,请在每3个数字后插入逗号。它可以吗?)您可以随时查看number_format()的PHP源代码,它是用不支持列表、数组或正则表达式的CWhat语言编写的?您正在编写8086汇编程序吗?您现有的代码是什么样子的?“我使用的语言不支持列表/数组/正则表达式,因此我愿意接受任何建议。”不过,感谢您的建议!:(嗯……在返回之前,应该将$num转换回一个数字。此外,它只适用于整数。“我使用的语言不支持列表/数组/正则表达式,因此我愿意接受任何建议。”不过,感谢您的建议!:(嗯……在返回之前,应该将$num强制转换回一个数字。另外,它只处理整数。这不会产生预期的输出。如果它能产生正确的结果,你不应该将它强制转换回
(int)
,因为这会去掉添加的逗号。而且逻辑太简单,布尔处理是错误的(
在应用模之前否定
$i
)。此外,它还需要从末尾开始计算混响中的位置。不过,它作为一般方法示例很有用:]哇;-)很明显,我把它直接扔进了评论中。你错过了$i应该从$len-1开始的$i。代码有问题,但它背后的想法会起作用。示例代码不起作用,即使你说它需要修改,也不会产生预期的输出。如果它能产生正确的结果,你不应该将其丢弃对
(int)
,因为这样会去掉添加的逗号。另外,逻辑太简单,布尔处理是错误的(
在应用模之前否定
$i
)。此外,它还需要从末尾开始计算混响中的位置。不过,作为一般方法示例,它很有用:]whoops;-)很明显,我把它直接扔进了评论中。你错过了$i应该从$len-1开始的$i。代码有问题,但背后的想法会起作用。示例代码不起作用,即使你说我使用它时需要修改,它也不起作用,除非我做错了什么?@user551841我编辑了代码。我没有o将$num转换为字符串。这足以让我将其转换为我所需的语言,非常感谢。当我使用它时,它不起作用,除非我做错了什么?@user551841我编辑了代码。我必须将$num转换为字符串。这足以让我将其转换为我所需的语言,非常感谢。