Подтвердить что ты не робот

Функция typecasting vs для преобразования типа переменной в PHP

Есть ли разница между приведением типов и использованием функции для преобразования переменной в какой-то тип?

(float)$var VS. floatval($var)

Если есть, когда один из них должен использоваться вместо другого?

4b9b3361

Ответ 1

Нет никакой разницы в полученном значении, просто:

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

Последнее, по моему мнению, является основной причиной существования floatval: поэтому каждая операция литья имеет эквивалентную функцию, которая может быть полезна при некоторых обстоятельствах.