4

I want to put comma in every 3 digit for a number, for example.

$number = 1234567;
// should print 1,234,567

how can I do this?

update: please see this code

<?php
/**
 * Get Popularity Text of a Domain via Alexa XML Data
 *
 * @return string|FALSE text or FALSE on error
 */
function alexa_get_rank($domain)
{
    $alexa = "http://data.alexa.com/data?cli=10&dat=s&url=%s";
    $request_url =  sprintf($alexa, urlencode($domain));


    $xml = simplexml_load_file($request_url);
    if (!$xml) {
        return FALSE;
    }

    $nodeAttributes = $xml->SD[1]->POPULARITY->attributes();
    $text = (int) $nodeAttributes['TEXT'];

    $num = number_format($text);

    return $num;
}

in this return only 3 digit.

Khaled Bawazir
  • 117
  • 1
  • 1
  • 8
  • 1
    A simple search would have gave you this [this](http://stackoverflow.com/questions/10424120/format-a-number-with-grouped-thousands) – Qben Nov 13 '12 at 06:45
  • I have searched about this but my questionis a little deffrent, see my updated question please – Khaled Bawazir Nov 13 '12 at 08:03

8 Answers8

19

Use

echo number_format('1234567');

PHP Manual : number_format()

GBD
  • 15,847
  • 2
  • 46
  • 50
3

Try this one:

$number = 1234567;
echo number_format($number);

Use this as ref.

sephoy08
  • 1,104
  • 7
  • 16
1
$number = 123456789;
$number = number_format($number);
echo $number;
Miqdad Ali
  • 6,129
  • 7
  • 31
  • 50
1

See number_format.

<?php
echo number_format(1234567890); //1,234,567,890
Anthony Sterling
  • 2,451
  • 16
  • 10
1
 $num = 1234567.65;
 $num = number_format($num);
 echo $num; // $num = 1,234,568
Antariksh
  • 508
  • 8
  • 17
0
<?
$number = 1234567;
echo number_format($number); // this returns : 1,234,567
?>

Learn more about number_format();

LIGHT
  • 5,604
  • 10
  • 35
  • 78
0
$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 without thousands separator
$english_format_number = number_format($number, 2, '.', '');// 1234.57

Check out number_format() at php.net for more information.

TURTLE
  • 3,728
  • 4
  • 49
  • 50
0

To format numbers, one can use number_format

Try this code:

$number=1234567;  
$number_format=number_format($number,0,".",","); // return 1,234,567
MB_18
  • 1,620
  • 23
  • 37