Hi there everyone!
I wrote this function because I need to save space in my web panel and the user doesn’t always need to know the exact value, like this:
This is the function I use for the money:
/* Simple numbers, math hurts. */
function fuzzyNumber($number){
$numLength = strlen((string)$number);
if($numLength > 12){
$n1 = substr($number, -$numLength, -12);
$n2 = '.'.substr(round(substr($number, -12, -10), -1), 0, -1);
$howBig = 't';
}elseif($numLength > 9){
$n1 = substr($number, -$numLength, -9);
$n2 = '.'.substr(round(substr($number, -9, -7), -1), 0, -1);
$howBig = 'b';
}elseif($numLength > 6){
$n1 = substr($number, -$numLength, -6);
$n2 = '.'.substr(round(substr($number, -6, -4), -1), 0, -1);
$howBig = 'm';
}elseif($numLength > 3){
$n1 = substr($number, -$numLength, -3);
$n2 = '.'.substr(round(substr($number, -3, -1), -1), 0, -1);
$howBig = 'k';
}else{
$n1 = $number;
$n2 = '';
$howBig = '';
}
return $n1.$n2.$howBig;
}
And it works but although I don’t know enough about PHP to make it better(more compact/portable/elegant), I know enough about it to know that my code can always be made better.
If anyone would like to point out what I shouldn’t have done or how I could make some part of it better, I’d love to hear about it. I learned a lot writing it but I know there’s got to be some capabilities that I didn’t discern from my Googling.
Thanks for your time!