Ответ 1
Нет никакой разницы в полученном значении, просто:
-
(float)
- это язык и очень быстрый -
floatval()
несет накладные расходы на вызов функции (минимальный, но тем не менее...) -
floatval()
как функция может использоваться способами, которые(float)
не может, например.array_map('floatval', $foo)
Последнее, по моему мнению, является основной причиной существования floatval
: поэтому каждая операция литья имеет эквивалентную функцию, которая может быть полезна при некоторых обстоятельствах.