Intereting Posts

Разница между float и double в php?

У меня есть этот код

$vad = 1.1; print gettype($vad); var_dump($vad); 

это выведет:

 double float(1.1) 

Таким образом, это двойной или плавающий в php?

В PHP нет никакой разницы. float , double или real – это один и тот же тип данных.

На уровне C все хранится как double .
Реальный размер по-прежнему зависит от платформы.

Подробнее см. В руководстве:
http://www.php.net/manual/en/language.types.float.php

Для PHP они одинаковы. http://www.php.net/manual/en/language.types.float.php :

Числа с плавающей запятой (также называемые «float», «doubleles» или «real numbers») могут быть указаны с использованием любого из следующих синтаксисов: […]

Запутанная часть заключается в том, почему gettype (который вы не должны использовать, во всяком случае) возвращает «double» вместо «float». Ответ: http://de2.php.net/manual/en/function.gettype.php :

«double» (по историческим причинам «double» возвращается в случае float, а не просто «float»)

Начиная с PHP 7.0.6 в Windows, сравнивая эту команду без xdebug:

 $ php -r 'var_dump(28.4);' float(28.4) 

и с xdebug:

 $ php -r 'var_dump(28.4);' Command line code:1: double(28.4) 

Обратите внимание, что это изменяет только выход var_dump (), но не фактическое управление памятью.

Это может касаться некоторых проблем, почему вы видите double вместо float показанного в var_dump на некоторых других машинах.

Кроме того, с или без gettype все равно возвращает string(6) "double" .