-1

私は不動産ポータルを作成しています。その中で、ユーザーは 55,00,000 - 45,35,000 - 30,00,000 などのプロパティ値を入力しています。私の質問は、これらの値を 55 Lac(s) - 45.35 Lac(s) - 30 Lac(s) などとして表示したいということです。

ありがとう

4

6 に答える 6

3

money_format()phpで関数を使用できます。http://php.net/manual/en/function.money-format.php

ウィンドウで使用するmoney_format()には、Intl 拡張機能がある場合は、次を使用できます

http://de.php.net/manual/en/numberformatter.formatcurrency.php — フォーマッタ ルールに従って通貨値をフォーマットします。マニュアルの例

$fmt = new NumberFormatter( 'de_DE', NumberFormatter::CURRENCY );
echo $fmt->formatCurrency(1234567.891234567890000, "EUR")."\n";
echo $fmt->formatCurrency(1234567.891234567890000, "RUR")."\n";
$fmt = new NumberFormatter( 'ru_RU', NumberFormatter::CURRENCY );
echo $fmt->formatCurrency(1234567.891234567890000, "EUR")."\n";
echo $fmt->formatCurrency(1234567.891234567890000, "RUR")."\n";

出力

1.234.567,89 €
1.234.567,89 RUR
1 234 567,89€
1 234 567,89р.

また、そのフォーマットされたお金の文字列を解析してフロートに戻す方法についての私の回答も参照してください。

于 2013-08-01T06:10:17.577 に答える
1

通常の場合、 money_format は理想的な方法ですが、「Lac」のような形式を使用する必要があるためです。条件に基づいて独自のコードを記述する必要があります。

最初に、ユーザーが入力した金額からすべてのカンマを削除します。そのように

$number = str_replace(',', '', $number);

次に、必要な文字列を確認して作成します。

if($number > 10000000)
{
    $num = ((float)$number) / 10000000;
    $num = $num.' Crore(s)'
}
else if($number > 100000)
{
    $num = ((float)$number) / 100000;
    $num = $num.' Lac(s)'
}
else if($number > 1000)
{
    $num = ((float)$number) / 1000;
    $num = $num.' Thousand(s)'
}
于 2013-08-01T06:24:46.133 に答える