Четверг, 16.05.2024, 16:19
DigitalBox
Приветствую Вас Гость | RSS
Главная Типы данных Регистрация Вход
Меню сайта

Типы данных



Переменные могут содержать значения различных типов. В свою очередь, над данными различных типов можно выполнять различные операции. Например, можно складывать два числа— 1+2. Однако сложение двух символов (а+Ь) выполняется совсем по-другому. В этом разделе вы узнаете, какие типы данных существуют в языке РНР и как их можно использовать.

В переменных РНР можно хранить данные следующих простых типов:

  • Целый тип (integer) позволяет оперировать с целыми числами (без дробной части), такими как -43, 0, 1, 27 или 543 8. Допустимый диапазон целочисленных значений в общем случае зависит от операционной системы. Однако обычно допустимые значения переменных целочисленного типа лежат в пределе от -2 до 2 миллиардов.
  • Тип с плавающей точкой (floating point) позволяет манипулировать числами с дробной частью, например 5 .24 или 123 .456789. Такие числа часто называются действительными (real number) или числами с плавающей точкой (flоat).
  • Строковый тип (string) обеспечивает хранение последовательности символов, например привет. На длину текстовой строки практически не накладывается каких-либо ограничений.
  • К булевому (логическому) типу (boolean) относятся два значения: TRUE (истина) и FALSE (ложь). Данный тип более подробно рассматривается ниже.

Присваивание типов данных

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

Истина или ложь: булевы значения

Переменные логического типа могут содержать два значения: TRUE (истина) и FALSE (ЛОЖЬ). В основном они используются в условных выражениях. Например, результатом обработки выражения $а>$Ь будет либо TRUE (ИСТИНА), либо FALSE (ЛОЖЬ).

В языке РНР ложными считаются следующие значения:

  • строка " FALSE" (состоящая из символов как в верхнем, так и в нижнем регистрах);
  • целое значение 0;
  • значение с плавающей точкой 0.0;
  • пустая строка;
  • строка, содержащая единственный символ "0" ;
  • константа NULL.

Все остальные значения соответствуют логическому значению TRUE. При выводе булевской переменной с помощью функции echo отобразится пустая строка, если в этой переменной содержится значение FALSE, и 1 - в противном случае. Логические значения зачастую применяются в качестве возвращаемых значений функций. Это позволяет определить, успешно ли было завершено ее выполнение.

По мере необходимости в языке РНР автоматически выполняется и преобразование типов. Например, в следующем фрагменте требуемое преобразование выполняется без малейших проблем:

$firstNumber = 1 ;        # Хранится как целое
$secondNumber = 1.1;  # Хранится как число с плавающей точкой
$sum = $firstNuinber+$secondNumber;

С формальной точки зрения, третье выражение лишено смысла, поскольку в нем используются операнды различных типов. Однако интерпретатор РНР выполняет преобразование целого значения в значение типа float, и суммирование двух переменных происходит без каких бы то ни было проблем. Следует заметить, что вся эта процедура выполняется автоматически.


Приведение типов

Иногда интерпретатору РНР не удается правильно определить тип переменной. Тогда при ее использовании будет выдана ошибка об использовании неверного типа. В этом случае нужно самостоятельно определить тип переменной. Такая операция называется приведением типов (type casting). Явно задать тип можно следующим образом:

$newint = (int )$var1;
$newfloat = (float)$var1;
$newstring = (string)$var1;

Значение переменной, расположенной справа от символа равенства, присваивается переменной с указанным типом, находящейся слева. Так, значение $var1 присваивается переменной $newint с типом integer((int)).

При приведении типов будьте очень внимательны. Иногда это может привести к непредсказуемым результатам. Например, при преобразовании действительного значения в целое теряется дробная часть. Например, если в переменной $number содержится значение 1.8, то после его преобразования в целое — $newnumber=(int)$number — в переменной $newnumber будет содержаться значение 1.

Определить тип переменной можно с помощью функции var_dump($myvariable);

Например, следующее выражение позволяет определить тип переменной $checkvar: var_dump($checkvar);

В качестве результата будет получено выражение int(27), что свидетельствует о том, что в переменной $checkvar содержится целочисленное значение 27.

Форма входа

Мини-чат

Календарь новостей
«  Май 2024  »
ПнВтСрЧтПтСбВс
  12345
6789101112
13141516171819
20212223242526
2728293031

Поиск

Друзья сайта
Скажи сайту спасибо
ЯндексЯндекс. ДеньгиХочу такую же кнопку



Получить WMR-бонус на свой кошелек!

Статистика

Онлайн всего: 1
Гостей: 1
Пользователей: 0

Copyright MyCorp © 2024 Бесплатный конструктор сайтов - uCoz