простое выражение в php, форматирование десятичного числа

Мне нужно преобразовать числа, чтобы иметь .00 после них, но только если число является целым числом или оно имеет только 1 число после десятичной точки, например:

1.4 = 1.40 45 = 45.00 34.77 = 34.77 

Какой срок для использования в этом простом случае?

 number_format($number, 2, '.', ''); 

Подробнее читайте на PHP.net . Вам не нужно определять, является ли число целым или нет – если это число, оно будет отформатировано до двух знаков после запятой.

Если вы хотите разделитель тысяч, измените последний параметр на ',' .

Вы также можете использовать printf или sprintf

 printf("%01.2f", '34.77'); $formatted_num = sprintf("%01.2f", '34.77'); 

Проверьте встроенную функцию PHP number_format

Вы можете передать ему переменную и отформатировать ее до нужных знаков после запятой

  $number = 20; if (is_int($number)) { $number = number_format($number, 2, '.', ''); } 

читать number_format

 number_format($number, 2, '.', ''); 
 $num = 0.00638835; $avg = sscanf($num,"%f")[0] /100; echo sprintf("%.10f", $avg); result 0.0000638835