2010-03-13 120 views
2

我需要一种方法来将数字转换为格式化的方式,方法是在合适的位置插入逗号。它可以使用正则表达式吗?PHP:通过插入逗号来格式化数字字符串

例子:

12345 => 12,345 
1234567 =>1,234,567 
+0

我不知道如果PHP与否,但我希望PHP有某种格式化功能的那为你做这件事(希望对文化敏感)。 – 2010-03-13 03:45:01

+0

我不知道人们在来这里之前是否会使用谷歌... – animuson 2010-03-13 03:50:01

+1

Google现在会将您发送到此处。 :( – kenny 2010-03-13 03:52:58

回答

11

没有必要,你可以很容易做到使用number_format()功能,它去正则表达式。

echo number_format(12345); // prints 12,345 
echo number_format(1234567); // prints 1,234,567 

$arr = array(
     1234567890, 
     123456789, 
     12345678, 
     1234567, 
     123456, 
     12345, 
     1234, 
     123, 
    ); 

foreach($arr as $num) { 
    echo number_format($num)."\n"; 
} 

输出:

1,234,567,890 
123,456,789 
12,345,678 
1,234,567 
123,456 
12,345 
1,234 
123 
0

整数值的

$intVal=2151; 

echo number_format((string)$intVal); // output -> 2,151