Met adlı üyeden alıntı: mesajı görüntüle
Girdiğiniz tüm sayılar is_numeric sınamasında kalır çünkü hepsi sayıdır, diğer if ifadelerine geçmemesi normal.

function duzelt($a)
{
if(!is_numeric($a)){
return false; // geçerli bir sayı değilse false döndürür veya hata mesajı basabilirsiniz
}

$a = floatval($a);

if($a == 1.1){
return number_format($a, 2, '.', '.');
}else if($a==1.00 or $a==1){
return "-";
}else{
return $a;
}
}
olmaz hocam $a = 1.1 demişsiniz başka rakamlarda olabilir standart değil