Mysql
 sql >> Datenbank >  >> RDS >> Mysql

Nummer in abgekürzte Nummer formatieren

Wenn Sie sie als Zahlen haben, können Sie diese Funktion direkt verwenden.

function formatValue($size, $precision = 1)
{
    static $suffixes = array('', 'k', 'm');
    $base = log($size) / log(1000);

    return round(pow(1000, $base - floor($base)), $precision) . $suffixes[floor($base)];
}

Wenn Sie sie nicht als Zahlen haben, verwenden Sie PHP:unformat money

Für Ihren speziellen Fall können Sie Little Dirty Hack verwenden, aber ich empfehle es nicht, wenn Sie speziellere Fälle haben.

function formatValue($size, $precision = 1)
{
    static $suffixes = array('', 'k', 'm');
    $base = log($size) / log(1000);

    if ($base >= 5/3 && $base < 2) {
        return round(pow(1000, $base - floor($base)) / 100, $precision) . 'lakh';
    }

    return round(pow(1000, $base - floor($base)), $precision) . $suffixes[floor($base)];
}