如何在PHP中为数字添加逗号

Ahm*_*uad 52 php

我想知道如何在数字中添加逗号.让我的问题变得简单.

我想改变这个:

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


Md.*_*man 5

这是孟加拉语格式

首先创建一个函数

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)