Глава 2. Переменные и типы данных
Преобразование типов
Явное приведение переменной к типу, отличному от того, который изначально предназначался для нее, называется преобразованием(casting) типа. Изменение типа может быть как временным, одноразовым, так и постоянным.
Чтобы временно привести переменную к другому типу, достаточно воспользоваться оператором преобразования типа — указать нужный тип перед именем переменной в круглых скобках(табл. 2.2).
Таблица 2.2. Операторы преобразования типа переменных
Оператор преобразования типа |
Новый тип |
(int) или(integer) |
Целое число |
(real),(double) или(float) |
Вещественное число |
(string) |
Строка |
(array) |
Массив |
(object) |
Объект |
Простой пример преобразования типов:
$variable1= 13; // $variable1 присваивается целое число 13
$variable2 =(double)$variable1; // $variable2 присваивается 13.0
Хотя переменная $variable1 первоначально содержала целое число 13, преобразование(double) преобразует ее к вещественному типу(поэтому число 13 превращается в 13.0). Полученное значение присваивается переменной $variable2.
Из предыдущего раздела вы знаете, что при суммировании целого числа с вещественным получается вещественный результат. Однако тип результата можно изменить посредством явного преобразования типа:
$variablel = 4.0;
$variable2 = 5;
$variable3 =(int)$variable1 + $variable2; // $variable3 = 9
Следует заметить, что преобразование вещественного типа к целому всегда сопровождается округлением:
$variablel = 14.7;
$variable2 =(int)$varlable1; // $variable2 = 14
Строку или переменную другого типа также можно преобразовать в элемент массива. В этом случае преобразованная переменная становится первым элементом массива:
$variable1 = 1114;
$array1 =(array)$varable1;
print $array1[0]; // Выводится значение 1114
Наконец, любой тип данных можно преобразовать в объект. Переменная становится атрибутом объекта, и ей присваивается имя scalar:
$model = "Toyota";
$new_obj =(object)$model;
Ссылка на исходное строковое значение выглядит так:
print $new_obj->scalar;
Назад |
Содержание раздела |
Общее Содержание |
Вперед
Если Вы не нашли что искали, то рекомендую воспользоваться поиском по сайту:
|