<?php
class NumberQuantifier {
protected $quantifierList;
public function __construct($quantifierList) {
$this->quantifierList = $quantifierList;
arsort($this->quantifierList); }
public function quantify($number) {
foreach ($this->quantifierList as $symbol => $threshold) {
if ($threshold > $number) continue;
}
}
}
$numberQuantifier = new NumberQuantifier
(array( 'M' => 1000000,
'B' => 1000000000,
'K' => 1000
));
echo $numberQuantifier->quantify(148293);
echo $numberQuantifier->quantify(2356458);
echo $numberQuantifier->quantify(23568534);
echo $numberQuantifier->quantify(8927492842);
PD9waHAKCmNsYXNzIE51bWJlclF1YW50aWZpZXIgewoJcHJvdGVjdGVkICRxdWFudGlmaWVyTGlzdDsKCQoJcHVibGljIGZ1bmN0aW9uIF9fY29uc3RydWN0KCRxdWFudGlmaWVyTGlzdCkgewoJCSR0aGlzLT5xdWFudGlmaWVyTGlzdCA9ICRxdWFudGlmaWVyTGlzdDsKCQlhcnNvcnQoJHRoaXMtPnF1YW50aWZpZXJMaXN0KTsKCX0KCQoJcHVibGljIGZ1bmN0aW9uIHF1YW50aWZ5KCRudW1iZXIpIHsKCQlmb3JlYWNoICgkdGhpcy0+cXVhbnRpZmllckxpc3QgYXMgJHN5bWJvbCA9PiAkdGhyZXNob2xkKSB7CgkJCWlmICgkdGhyZXNob2xkID4gJG51bWJlcikgY29udGludWU7CgkJCQoJCQlyZXR1cm4gbnVtYmVyX2Zvcm1hdCgkbnVtYmVyIC8gJHRocmVzaG9sZCwgMSkgLiAkc3ltYm9sOwoJCX0KCX0KfQoKJG51bWJlclF1YW50aWZpZXIgPSBuZXcgTnVtYmVyUXVhbnRpZmllcihhcnJheSgKCSdNJyA9PiAxMDAwMDAwLAoJJ0InID0+IDEwMDAwMDAwMDAsCgknSycgPT4gMTAwMAopKTsKCmVjaG8gJG51bWJlclF1YW50aWZpZXItPnF1YW50aWZ5KDE0ODI5Myk7CmVjaG8gJG51bWJlclF1YW50aWZpZXItPnF1YW50aWZ5KDIzNTY0NTgpOwplY2hvICRudW1iZXJRdWFudGlmaWVyLT5xdWFudGlmeSgyMzU2ODUzNCk7CmVjaG8gJG51bWJlclF1YW50aWZpZXItPnF1YW50aWZ5KDg5Mjc0OTI4NDIpOw==