我想知道如何在数字中添加逗号.让我的问题变得简单.
我想改变这个:
1210 views
Run Code Online (Sandbox Code Playgroud)
至:
1,210 views
Run Code Online (Sandbox Code Playgroud)
并且:
14301
Run Code Online (Sandbox Code Playgroud)
至
14,301
Run Code Online (Sandbox Code Playgroud)
等等更大的数字.是否有可能与PHP功能?
and*_*ewk 105
来自php手册http://php.net/manual/en/function.number-format.php
我假设你想要英文格式.
<?php
$number = 1234.56;
// english notation (default)
$english_format_number = number_format($number);
// 1,235
// French notation
$nombre_format_francais = number_format($number, 2, ',', ' ');
// 1 234,56
$number = 1234.5678;
// english notation with a decimal point and without thousands seperator
$english_format_number = number_format($number, 2, '.', '');
// 1234.57
?>
Run Code Online (Sandbox Code Playgroud)
我的2美分
Kau*_*hta 22
以下代码对我有用,可能对您有所帮助.
$number = 1234.56;
echo number_format($number, 2, '.', ',');
Run Code Online (Sandbox Code Playgroud)
//1,234.56
function numberFormat($number, $decimals=0)
{
if (strpos($number,'.')!=null)
{
$decimalNumbers = substr($number, strpos($number,'.'));
$decimalNumbers = substr($decimalNumbers, 1, $decimals);
}
else
{
$decimalNumbers = 0;
for ($i = 2; $i <=$decimals ; $i++)
{
$decimalNumbers = $decimalNumbers.'0';
}
}
$number = (int) $number;
$number = strrev($number); // reverse
$n = '';
$stringlength = strlen($number);
for ($i = 0; $i < $stringlength; $i++)
{
// from digit 3, every 2 digit () add comma
if($i==2 || ($i>2 && $i%2==0) ) $n = $n.$number[$i].',';
else $n = $n.$number[$i];
}
$number = $n;
$number = strrev($number); // reverse
($decimals!=0)? $number=$number.'.'.$decimalNumbers : $number ;
if ($number[0] == ',') $number = substr_replace($number, '', 0, 1);
if ($number[1] == ',' && $number[0] == '-') $number = substr_replace($number, '', 1, 1);
return $number;
}
Run Code Online (Sandbox Code Playgroud)
* numberFormat(5000000, 2) // Output: 50,00,000.00
* numberFormat(5000000) // Output: 50,00,000
* numberFormat(-15264.61, 2) // Output: -15,264.61
* numberFormat(2106.02) // Output: 2,106
* numberFormat(2.02) // Output: 2
* numberFormat(21.02) // Output: 21
* numberFormat(210.02) // Output: 210
* numberFormat(2106.02) // Output: 2,106
* numberFormat(21060.02) // Output: 21,060
* numberFormat(210600.02) // Output: 2,10,600
* numberFormat(2106000.02) // Output: 21,06,000
* numberFormat(21060000.02) // Output: 2,10,6,0,000
* numberFormat(210600000.02) // Output: 21,06,00,000
* numberFormat(-210600000.0222, 2) // Output: -21,06,00,000.02
Run Code Online (Sandbox Code Playgroud)