Введение

PHP поддерживает восемь простых типов.

Четыре скалярных типа:

Два смешанных типа:

И, наконец, два специальных типа:

Для удобства понимания в этом руководстве используется также несколько псевдотипов:

  • mixed
  • number
  • callback (он же callable)
  • array|object
  • void

И псевдопеременная $....

Вы также можете найти несколько упоминаний типа двойной точности (double). Рассматривайте его как число с плавающей точкой, два имени существуют только по историческим причинам.

Как правило, программист не устанавливает тип переменной; обычно это делает PHP во время выполнения программы в зависимости от контекста, в котором используется переменная.

Замечание: Если вы желаете проверить тип и значение определённого выражения, используйте var_dump().

Если же вам для отладки необходимо просто удобочитаемое представление типа, используйте gettype(). Чтобы проверить на определенный тип, не используйте gettype(), применяйте для этого is_type функции. Вот несколько примеров:

<?php
$a_bool 
TRUE;   // логический
$a_str  "foo";  // строковый
$a_str2 'foo';  // строковый
$an_int 12;     // целочисленный

echo gettype($a_bool); // выводит: boolean
echo gettype($a_str);  // выводит: string

// Если это целое, увеличить на четыре
if (is_int($an_int)) {
    
$an_int += 4;
}

// Если $a_bool - это строка, вывести ее
// (ничего не выводит)
if (is_string($a_bool)) {
    echo 
"Строка: $a_bool";
}
?>

Если вы хотите принудительно изменить тип переменной, вы можете либо привести переменную, либо использовать функцию settype().

Обратите внимание, что переменная, в зависимости от ее типа в данный момент, в определённых ситуациях может иметь разные значения. Более подробную информацию смотрите в разделе Манипуляции с типами. Также вам, возможно, будет интересно посмотреть таблицы сравнения типов, поскольку в них приведены примеры различных сравнений, связанных с типами.

Коментарии

get_debug_type() 返回变量的类型。原文中文: get_debug_type() 检索表达式的值和类型;原文英文:To retrieve the type of an expression, use the get_debug_type() function. However。所以这个地方翻译存在问题,检索表达式的类型使用get_debug_type()方法。
2024-07-02 06:35:42
http://php5.kiev.ua/manual/ru/language.types.intro.html

    Поддержать сайт на родительском проекте КГБ