Идентификаторы
Идентификаторы представляют собой имена переменных. Использование идентификаторов регламентируется следующими правилами:
- Идентификаторы могут иметь любую длину и состоять из букв, цифр и символов подчеркивания.
- Идентификаторы не могут начинаться с цифры.
- В РНР идентификаторы чувствительны к регистру символов. Исключением из этого правила составляют встроенные РНР-функции — их имена могут быть представлены в любом регистре.
- Переменные могут иметь те же имена, что и встроенные функции. Однако это может привести к путанице, поэтому подобных случаев следует избегать. Нельзя создавать функции, имена которых совпадают с именами других функций.
Переменные, объявленные пользователем
В добавление к переменным, передаваемым из HTML-формы, вы можете объявлять и использовать собственные переменные.
Одна из особенностей РНР заключается в том, что переменные не обязательно объявлять до того, как вы будите ими пользоваться. Переменная создается в момент первого присвоения ей значения.
Присвоение значений переменным
Значения переменным присваиваются с помощью операции присваивания =
. На сайте компании АВС необходимо подсчитать общее количество единиц товара и общую сумму оплаты. Для хранения этих чисел имеет смысл создать две переменные. Для начала они инициализируются нулевыми значениями.
Добавим следующие строки в нижнюю часть нашего РНР-сценария:
$totalqty = 0;
$totalamount = 0.00;
Каждая из двух приведенных строк создает переменную и присваивает ей литеральное значение. Переменным можно присваивать также значения других переменных:
$totalqty = 0;
$totalqty = $totalamount;
Типы переменных
Тип переменной характеризуется видом хранящихся в ней данных. Различные данные могут храниться в переменных различных типов.
Типы данных РНР
РНР поддерживает следующие базовые типы данных:
Integer (целый)
— используется для представления целых чисел.Float
, также называемыйdouble
(двойной точности) — используется для представления действительных чисел.String
(строковой) — используется для представления строк символов.Boolean
(булевский) — используется для хранения значений true (истина) и false (ложь).Array
(массив) — используется для хранения нескольких элементов данных.Object
(объект) — используется для хранения экземпляров классов.
Доступны также и два специальных типа — NULL
и resource
(ресурс). Переменные, которым не присвоено значения, которые не определены или принимают значение NULL
, относятся к типу NULL
. Некоторые встроенные функции (такие как функции работы с базами данных) возвращают переменные ресурсного типа. Такие переменные представляют внешние ресурсы.
РНР поддерживает также типы pdfdoc
и pdfinfo
, если установлена поддержка обработки PDF-документов.
Преимущества использования типов
Язык РНР является весьма слабо типизированным. В РНР тип переменной определяется типом присвоенного ей значения.
Например при создании переменных $totalqty
и $totalamount
их начальные типы были определены следующим образом:
$totalqty = 0;
$totalamount = 0.00;
Поскольку переменной $totalqty
было присвоено целочисленное значение 0, эта переменная теперь имеет тип Integer
. Аналогично, переменная $totalamount
имеет тип Float
.
В сценарий можно поместить и такую строку:
$totalamount = 'Добро пожаловать!';
Теперь переменная имеет тип String
. РНР в любой момент времени изменяет тип переменной в соответствии с хранящимися в ней данными.
Приведение типов
С помощью механизма приведения типов можно переводить переменную или конкретное значение в другой тип. Для этого достаточно перед переменной, тип которой вы хотите преобразовать, поместить в круглых скобках временный тип.
Например:
$totalqty = 0;
$totalamount = (float) $totalqty;
Вторая строка означает "Взять значение, хранящееся в переменной $totalqty
, интерпретировать его как значение типа float
и сохранить в переменной $totalamoun
". Переменная $totalamoun
получит тип float
. Приведение типа не меняет тип исходной переменной, поэтому типом переменной $totalqty
остается Integer
.
Переменные переменных
РНР предоставляет в распоряжение разработчиков еще один тип переменных — так называемые переменные переменных. Переменные переменных позволяют динамически менять имена переменных.
В основу этой возможности положена идея использования значения одной переменной в качестве имени другой.
Например:
$varname = "filtr";
Затем вместо $filtr
можно использовать $$varname
, например:
$$varname = 4;
Это эквивалентно:
$filtr = 4;
Данная особенность может показаться несколько запутанной. Позже мы вернемся к практическому использованию этой возможности.
Комментарии(0)
Для добавления комментариев надо войти в систему и авторизоватьсяКомментирование статей доступно только для зарегистрированных пользователей:Зарегистрироваться