Полный цикл в digital

Тип переменной, преобразование типов

Функция var_dump

Для отладки ваших программ лучше использовать специальную функцию var_dump. Она помимо вывода строки или числа еще будет указывать тип выводимых данных, а также им размер:

<?
$a = 10;
$b = "10";
echo var_dump($a); // int(10)
echo "<br>";
echo var_dump($b); // string(2)

Функция gettype

Для получения типа переменной применяется функция gettype(), которая возвращает название типа переменной, например, integer (целое число), double (число с плавающей точкой), string (строка), boolean (логическое значение), null, array (массив), object (объект) или unknown type:

<?
$a = 10;
$b = "10";
echo gettype($a); // integer
echo "<br>";
echo gettype($b); // string

Также есть ряд специальных функций, которые возвращают true или false в зависимости от того, представляет ли переменная определенный тип:

  1. is_integer($a) возвращает значение true, если переменная $a хранит целое число
  2. is_string($a) возвращает значение true, если переменная $a хранит строку
  3. is_double($a) возвращает значение true, если переменная $a хранит действительное число
  4. is_numeric($a) возвращает значение true, если переменная $a представляет целое или действительное число или является строковым представлением числа
  5. is_bool($a) возвращает значение true, если переменная $a хранит значение true или false
  6. is_scalar($a) возвращает значение true, если переменная $a представляет один из простых типов: строку, целое число, действительное число, логическое значение
  7. is_null($a) возвращает значение true, если переменная $a хранит значение null
  8. is_array($a) возвращает значение true, если переменная $a является массивом
  9. is_object($a) возвращает значение true, если переменная $a содержит ссылку на объект

Установка типа - функция settype()

С помощью функции settype() можно установить для переменной определенный тип. Она принимает два параметра: settype("Переменная", "Тип"). В качестве первого параметра используется переменная, тип которой надо установить, а в качестве второго - строковое описание типа, которое возвращается функцией gettype().

Если удалось установить тип, то функция возвращает true, если нет - то значение false.

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

<?
$a = 10.7;
settype($a, "integer");
echo $a; // 10

Поскольку переменная $a представляет действительное число 10.7, то его вполне можно преобразовать в целое число через отсечение дробной части. Поэтому в данном случае функция settype() возвратит true.

Преобразование типов

По умолчанию PHP при необходимости автоматически преобразует значение переменной из одного типа в другой. По этой причине явные преобразования в PHP не так часто требуются. Тем не менее мы можем их применять.

Для явного преобразования перед переменной в скобках указыется тип, в который надо выполнить преобразование:

<?
$boolVar = false;
$intVar = (int)$boolVar; // 0
echo "boolVar = $boolVar<br>intVar = $intVar";

В данном случае значение "false" пробразуется в значение типа int, которое будет храниться в переменной $intVar. А именно значение false преобразуется в число 0. После этого мы сможем использовать данное значение как число.

При использовании выражения echo для вывода на страницу передаваемые значения автоматически преобразуются в строку. И поскольку переменная boolVar равна false, ее значение будет преобазовано в пустую строку. Тогда как значение 0 преобразуется в строку "0".

В PHP могут применяться следующие преобразования:

  1. (int), (integer) преобразование в int (в целое число)
  2. (bool), (boolean) преобразование в bool
  3. (float), (double), (real) преобразование в float
  4. (string) преобразование в строку
  5. (array) преобразование в массив
  6. (object) преобразование в object
Заполните форму уже сегодня!
Для начала сотрудничества необходимо заполнить заявку или заказать обратный звонок. В ответ получите коммерческое предложение, которое будет содержать индивидуальную стратегию с учетом требований и поставленных задач
Работаем по будням с 9:00 до 18:00. Заявки, отправленные в выходные, обрабатываем в первый рабочий день до 12:00.
Спасибо, ваш запрос принят и будет обработан!
Эйч Маркетинг