Bạn có nhiều lựa chọn, nhưng money_format có thể làm các trick cho bạn.
// Example:
$amount = '100000';
setlocale(LC_MONETARY, 'en_IN');
$amount = money_format('%!i', $amount);
echo $amount;
// Output:
"1,00,000.00"
Xin lưu ý rằng money_format()
chỉ được xác định nếu hệ thống có khả năng strfmon
. Ví dụ, Windows không, vì vậy nó không được xác định trong Windows.
cuối cùng chỉnh sửa: Đây là một PHP Thực hiện tinh khiết sẽ làm việc trên bất kỳ hệ thống:
$amount = '10000034000';
$amount = moneyFormatIndia($amount);
echo number_format($amount, 2, '.', '');
function moneyFormatIndia($num){
$explrestunits = "" ;
if(strlen($num)>3){
$lastthree = substr($num, strlen($num)-3, strlen($num));
$restunits = substr($num, 0, strlen($num)-3); // extracts the last three digits
$restunits = (strlen($restunits)%2 == 1)?"0".$restunits:$restunits; // explodes the remaining digits in 2's formats, adds a zero in the beginning to maintain the 2's grouping.
$expunit = str_split($restunits, 2);
for($i=0; $i<sizeof($expunit); $i++){
// creates each of the 2's group and adds a comma to the end
if($i==0){
$explrestunits .= (int)$expunit[$i].","; // if is first value , convert into integer
}else{
$explrestunits .= $expunit[$i].",";
}
}
$thecash = $explrestunits.$lastthree;
} else {
$thecash = $num;
}
return $thecash; // writes the final format where $currency is the currency symbol.
}
Nguồn
2013-07-22 05:47:27
number_format (' '$ Ví dụ, 2,,','); sẽ làm điều đó cho bạn .. – Reshil
Vì bạn mới ở đây, hãy chấp nhận câu trả lời (đánh dấu) để giải quyết vấn đề của bạn. Bỏ phiếu (mũi tên lên) (các) câu trả lời cung cấp (các) thông tin hoặc giúp đỡ bạn. Bỏ phiếu xuống (mũi tên xuống) (các) câu trả lời là giả mạo. – Techie
Gợi ý: nếu bạn muốn sử dụng dấu phân cách dài hơn 1 ký tự (ví dụ: " ") sẽ không hoạt động trong php <5.4.0, thật không may .. – UbiQue