<?php
$input='49.99';
$floor=floor($input);
$tens=round($input,-1);
echo $floor.' '.$tens."\n";
function getClosest($search, $arr) {
$closest = null;
foreach($arr as $item) {
if($closest == null || abs($search - $closest) > abs($item - $search)) {
$closest = $item;
}
}
return $closest;
}
function roundToValues( $tax, array $possibleTaxes ) {
$differences = array();
foreach( $possibleTaxes as $possibleTax) {
$differences[ $possibleTax ] = abs($possibleTax - $tax);
}
return array_search(min($differences), $differences);
}
$array = [
'0' => '0',
'20' => '0-20',
'50' => '20-50',
'100' => '50-100',
'200' => '100-200',
'500' => '200-500',
];
print_r($array);
echo getClosest($input,$array).' '.roundToValues($input,$array);
preferences:
43.95 ms | 402 KiB | 5 Q