Типы данных в php

РНР является языком с нестрогой типизацией — тип переменной определя­ется на основе ее значения. Тем не менее, следует иметь представление об типах данных, которые присутствуют в РНР. Всего их восемь, и все они перечислены ниже:

  • boolean. Логический тип, содержит значения TRUE или FALSE.
  • integer. Целое число.
  • float. Вещественное число.
  • string. Текст произвольной длины.
  • array. Массив.
  • object. Объект.
  • resource. Ресурс (например, файл).
  • NULL. Значение NULL.

Обычно заботиться о типах данных не следует — тип определятся автомати­чески при создании переменной. Например, создание переменной строкового типа выглядит следующим образом:

code: #php
$variable =  "Доброе утро!";

Создание переменной вещественного типа:

code: #php
$variable = 1.2345;

Создание переменной логического типа:

code: #php
$variable = TRUE;

В данном случае тип переменной определяется однозначно. Трудности начи­наются при смешивании различных типов данных в одном выражении, напри­мер, при сложении целого числа и строки и т.п. Ниже приведено несколько примеров подобных выражений:

code: #php
<?php
//Тип и значение переменной:
$variable = "О";  // строка "О"
$variable = $variable +2;     // целое число 2
$variable = $variable +1.1;      // $вещественное число 3.1
$variable = 2 + "8 apples";      // целое число 10
?>

Для предотвращения потенциальных проблем не следует смешивать различ­ные типы данных. Но даже и в таком случае РНР выполняет автоматическое не­явное преобразование типов. Если же требуется выполнить явное преобразова­ние типа, то требуемый тип должен быть указан слева от имени переменной в круглых скобках. Ниже приведено несколько примеров явного преобразова­ния типов:

code: #php
$int_variable = (integer) $variable;
$float_variable = (float) $variable;
$string_variable =  (string)  $variable;

При преобразовании в логический тип boolean, следующие значения преоб­разуются в значение FALSE (все остальные значения, включая все ресурсы, пре­образуются в TRUE):

  • Логическое FALSE.
  • Целое число 0.
  • Вещественное число 0.0.
  • Пустая строка и строка "О".
  • Массив с нулевым количеством элементов.
  • Объект, не имеющий свойств.
  • Специальный тип NULL.

При преобразовании в целое число значения других типов преобразуются следующим образом:

  • Логическое FALSE преобразуется в целое число 0, логическое TRUE преоб­разуется в целое число 1.
  • Вещественные числа округляются в меньшую сторону.

При преобразовании в вещественное число сперва осуществляется преобра­зование в целочисленное значение. Возможно также преобразование строковых значений в численные типы данных, но при этом имеется ряд особенностей В следующей главе содержится описание основных операторов и управляю­щих структур языка РНР, при помощи которых можно создавать полноценные программы.

Книга: PHP в примерах. Купить книгу
Автор: Стивен Хольцнер. Переводчик: С. Банников
Поделиться:

Похожие статьи: