Главная | Обратная связь | Поможем написать вашу работу!
МегаЛекции

Область видимости переменных




Область видимости переменной - это контекст, в котором эта переменная определена. Другими словами, это место программного кода, из которого мы можем работать с этой переменной.

Например, переменные, объявленные в функциях, недоступны для манипуляций вне тела функции.

Типы данных

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

Вы, должно быть, уже обратили внимание на то, что при создании переменной в PHP не нужно указывать ее тип явным образом. Тип переменной определяет сам интерпретатор. Иными словами, PHP является неявно типизированным языком программирования.

Однако это не означает, что нас не должно волновать, к какому типу данных относится та или иная переменная. Напротив, чтобы избежать ошибок, надо внимательно отслеживать типы при создании кода.

Язык PHP поддерживает восемь простых типов данных.

Cкалярные:

· boolean - булев тип;

· integer - целые числа;

· float - числа с плавающей точкой;

· string - строки;

Смешанные:

· array - массивы;

· object - объекты;

Специальные:

· resource;

· NULL.

Тип данных boolean

Логический тип данных. Может принимать одно из двух значений: true – означает истину, false – ложь.

$bool = true; // присвоить $bool значение TRUE

TRUE и FALSE – регистро-независимы.

При преобразовании в логический тип, следующие значения рассматриваются как FALSE:

· целое 0 (ноль)

· число с плавающей точкой 0.0 (ноль)

· пустая строка и строка "0"

· пустой массив

· специальный тип NULL (включая неустановленные переменные)

Все остальные значения рассматриваются как TRUE

Типы данных integer и float

В PHP имеется два числовых типа – целое число integer и число с плавающей точкой float.

Способы задания целого числа:

$num = 555; // десятичное число

$num = -555; // отрицательное число

$num = 0555; // восьмеричное число

$num = 0x5F; // шестнадцатеричное число

Способы задания числа с плавающей точкой:

$num = 2.124;

$num = 5.4e1;

$num = 4E-10;

Тип данных string

Строка - это набор символов, где символ - это то же самое, что и байт..

Важно! Строка не может быть размером больше, чем 2 Гб (2147483647 байт).

Специальные символы:

\n новая строка;

\r возврат каретки;

\t горизонтальная табуляция;

\\ обратная косая черта;

\$ знак доллара;

\" двойная кавычка.

Строка может быть определена четырьмя различными способами:

· одинарными кавычками

· двойными кавычками

· heredoc-синтаксисом

· nowdoc-синтаксисом (от PHP 5.3.0)

Двойные кавычки выглядят следующим образом:

echo "просто строка";

echo "Здесь будет: \n переход на новую строку";

$str = " ничего себе!";

echo "Переменная $str вклеена в эту строку";

Одинарные кавычки могут выглядеть так:

echo 'просто строка';

echo 'кроме того можно переходить на новую строку

просто используя

Enter, потому что это возможно';

echo ' Здесь не будет: \n перехода на новую строку';

$str = "ничего себе!";

echo 'Переменная $str не вклеена в эту строку ';

heredoc-синтаксис:

$str_big = <<< LABEL

Пример. Так выглядит строка, содержащая форматированный текст, созданная с помощью heredoc-синтаксиса:

Это очень похоже на использование HTML-тэга <PRE>.

И переменные, $str, сюда тоже можно подставлять, и еще спецсимволы.

LABEL;

LABEL – это идентификатор, заданный разработчикам. Его имя может содержать только буквы, цифры, знак подчеркивания и не должен начинаться с цифры.

Особенности heredoc-синтаксиса:

· Строка с открывающим идентификатором не может содержать после идентификатора никаких других символов, включая пробел.

· Закрывающий идентификатор должен начинаться с первого возможного символа в строке.

· Строка с закрывающим идентификатором не может содержать других символов, включая пробел, исключая точку с запятой.

nowdoc-синтаксис:

$str_big = <<< 'LABEL'

Пример. Так выглядит строка, содержащая форматированный текст, созданная с помощью nowdoc-синтаксиса:

Это очень похоже на использование heredoc.

Но переменные сюда нельзя подставлять, зато его можно использовать для вывода большого количества кода, избежав экранирования символов.

LABEL;

Nowdoc отличается от heredoc так же, как одинарные кавычки от двойных. Смысл тот же, но нельзя подставлять переменные напрямую.

Тип данных NULL

Специальный тип данных NULL нужен для того, чтобы показать, что у переменной отсутствует значение.

Переменная может принимать значение NULL в следующих случаях:

· В переменную была сохранена константа NULL;

· Переменной не было присвоено никакого значения;

· Переменная была очищена с помощью функции unset().

echo $a;

$a = null;

$a = 1;

unset($a);

echo $a; //Выведет NULL

Тип данных resource

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

Тип данных array

Array (массив) – тип данных, позволяющий хранить множество значений, объединённых одним именем переменной.

Массивы бывают простыми и ассоциативными. Простые массивы представляют собой упорядоченный набор однотипных данных, доступ к которым осуществляется по целочисленному индексу. Ассоциативные массивы – это структуры данных, в которых удобно хранить информацию, объеденную по смыслу, например учетные данные пользователя, или результат выполнения запроса к базе данных. Информация в ассоциативных массивах хранится в виде пары «ключ-значение».

В языке PHP любой массивы являются ассоциативными, но их также можно использовать в качестве обычных, так как в качестве ключа в паре «ключ-значение» можно использовать данные любого типа. Кроме того, массивы в качестве значений могут принимать другие массивы, таким образом, позволяя создавать многомерные структуры данных.

Работа с массивами:

$user[]= "John";//индекс 0

$user[]= "root";//индекс 1

$user[]= "p@ssw0rd";//индекс 2

//тоже, что и

$user[0]= "John";//индекс 0

$user[1]= "root";//индекс 1

$user[2]= "p@ssw0rd";//индекс 2

$user[] = "312-34-85";// имеет индекс 3

//или

$user = array("John", "root", "p@ssw0rd");

//тоже, что и

$user = array(0=>"John", 1=>"root",

2=>"p@ssw0rd");

$cnt = count($user); //Считаем ячейки

echo $user[1];//root

$user["name"]= "John";

$user["login"]= "root";

$user["password"]= "p@ssw0rd";

//можно мешать индексы и имена ячеек

$user[] = "312-34-85";// имеет индекс 0

echo $user["name"];//John

//тоже, что и

$user = array(

"name"=>"John",

"login"=>"root",

"password"=>"p@ssw0rd",

"312-34-85");

Константы

В языке PHP существует такое понятие, как константа. Это сохраненное значение, которое не может быть изменено в процессе выполнения программы.

Константы определяются следующим образом:

define ('PI', 3.14);

$index = 10 * PI;

PI = 10 * 3.14; // Ошибка!

Особенности констант:

• У имени констант нет приставки $.

• Константу можно задать только используя функцию define(), а не присваивая значение.

• Константа доступна в любом месте программы, без учёта области видимости.

• Константы не могут быть определены или аннулированы после первоначального объявления.

defined("имя_константы") – проверка константы.

echo PI; //3.14

Поделиться:





Воспользуйтесь поиском по сайту:



©2015 - 2024 megalektsii.ru Все авторские права принадлежат авторам лекционных материалов. Обратная связь с нами...