Комментарии, переменные, операторы, константы. Типы данных

Содержание

Слайд 2

ОСНОВНОЙ СИНТАКСИС Разделение инструкций. Комментарии.

ОСНОВНОЙ СИНТАКСИС

Разделение инструкций.
Комментарии.

Слайд 3

Изолирование от HTML Продвинутое изолированием с использованием условий.

Изолирование от HTML

Продвинутое изолированием с использованием условий.

Слайд 4

Изолирование от HTML

Изолирование от HTML

Слайд 5

Изолирование от HTML Замечания: если вы намереваетесь вставлять PHP-код в XML

Изолирование от HTML

Замечания:
если вы намереваетесь вставлять PHP-код в XML или XHTML,

чтобы соответствовать XML стандартам, вам следует использовать форму ;
короткие теги доступны, только когда они включены с помощью директивы short_open_tag в конфигурационном файле php.ini, либо если PHP был скомпилирован с опцией --enable-short-tags ;
теги в стиле ASP (четвертый пример) доступны, только когда они включены с помощью директивы asp_tags в конфигурационном файле php.ini;
Следует избегать использования коротких тегов при разработке приложений или библиотек, предназначенных для распространения или размещения на PHP-серверах, не находящихся под вашим контролем, так как короткие теги могут не поддерживаться на целевом сервере. Для создания переносимого, совместимого кода, не используйте короткие теги;
Начиная с PHP 5.4 короткий тег echo 
Слайд 6

Разделение инструкций Замечания: Закрывающий тег PHP-блока в конце файла не является

Разделение инструкций

Замечания:
Закрывающий тег PHP-блока в конце файла не

является обязательным, и в некоторых случаях его опускание довольно полезно, например, при использовании include Закрывающий тег PHP-блока в конце файла не является обязательным, и в некоторых случаях его опускание довольно полезно, например, при использовании include или require.
Это также удобно при использовании буферизации вывода, где нежелательно иметь пробелы в конце частей ответа, сгенерированного подключаемыми файлами.
Слайд 7

Комментарии HTML-код после // ... ?> или # ... ?> БУДЕТ

Комментарии

HTML-код после // ... ?> или # ... ?> БУДЕТ напечатан:
?>

завершает режим PHP и возвращает режим HTML,
а  //  или  # не могут повлиять на это.
Если включена директива asp_tags, то аналогичное поведение будет с // %> и # %>.
Однако, тег  не завершает режим PHP в однострочном комментарии.
Слайд 8

ПЕРЕМЕННЫЕ, КОНСТАНТЫ И ОПЕРАТОРЫ.

ПЕРЕМЕННЫЕ, КОНСТАНТЫ И ОПЕРАТОРЫ.

Слайд 9

Переменные в PHP обозначаются знаком $, за которым следует ее имя.

Переменные в PHP обозначаются знаком $, за которым следует ее имя.
Правильное

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

Переменные

Слайд 10

Присваивание по значению Результат: Переменная с именем first равна New text

Присваивание по значению

Результат:
Переменная с именем first равна New text
Переменная с

именем second равна Text
Слайд 11

Присваивание по ссылке По ссылке могут быть присвоены только именованные переменные:

Присваивание по ссылке

По ссылке могут быть присвоены только именованные переменные:

Результат
Меня зовут

Боб
Меня зовут Боб
Слайд 12

Присваивание по умолчанию В PHP и нет необходимости инициализировать переменные, Но

Присваивание по умолчанию

В PHP и нет необходимости инициализировать переменные,
Но это

считается очень хорошей практикой.
Неинициализированные переменные принимают значение по умолчанию в зависимости от их типа, который определяется из контекста их первого использования:
булевы принимают значение FALSE,
целые и числа с плавающей точкой - ноль,
строки (например, при использовании в echo) - пустую строку,
массивы становятся пустыми массивами.
Для обнаружения инициализации переменной используйте функцию isset().
Слайд 13

Предопределенные переменные Суперглобальные переменные — это встроенные переменные, которые всегда доступны

Предопределенные переменные

Суперглобальные переменные — это встроенные переменные, которые всегда доступны во всех

областях видимости:

$GLOBALS — Ссылки на все переменные глобальной области видимости
$_SERVER — Информация о сервере и среде исполнения
$_GET — GET-переменные HTTP
$_POST — HTTP POST variables
$_FILES — Переменные файлов, загруженных по HTTP
$_REQUEST — Переменные HTTP-запроса
$_SESSION — Переменные сессии
$_ENV — Переменные окружения
$_COOKIE — HTTP Куки

$php_errormsg — Предыдущее сообщение об ошибке
$HTTP_RAW_POST_DATA — Необработанные POST-данные
$http_response_header — Заголовки ответов HTTP
$argc — Количество аргументов переданных скрипту
$argv — Массив переданных скрипту аргументов

Слайд 14

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

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

Слайд 15

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

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

Слайд 16

Использование статических переменных

Использование статических переменных

Слайд 17

boolval — возвращает двоичное значение переменной empty — проверяет, пуста ли

boolval — возвращает двоичное значение переменной
empty — проверяет, пуста ли переменная
floatval — возвращает значение

переменной в виде числа с плавающей точкой
get_defined_vars — возвращает массив всех определенных переменных
gettype — возвращает тип переменной
intval — взвращает целое значение переменной
is_array — определяет, является ли переменная массивом
is_boolis_bool — проверяет, является ли переменная булевой (is_floatis_bool — проверяет, является ли переменная булевой (is_float, is_intis_bool — проверяет, является ли переменная булевой (is_float, is_int, is_numericis_bool — проверяет, является ли переменная булевой (is_float, is_int, is_numeric, is_nullis_bool — проверяет, является ли переменная булевой (is_float, is_int, is_numeric, is_null, is_scalaris_bool — проверяет, является ли переменная булевой (is_float, is_int, is_numeric, is_null, is_scalar, is_string, и т.д.)
isset — определяет, была ли установлена переменная значением отличным от NULL
print_r — выводит удобочитаемую информацию о переменной
settype — присваивает переменной новый тип
strval — возвращает строковое значение переменной
unset — удаляет переменную
var_dump — выводит информацию о переменной

Функции работы с переменными

Слайд 18

Константы

Константы

Слайд 19

Предопределенные константы __FILE__ хранит имя файла программы (и путь к нему),

Предопределенные константы

__FILE__ хранит имя файла программы (и путь к нему), которая

выполняется в данный момент,
__FUNCTION__ содержит имя функции
__CLASS__ – имя класса
PHP_VERSION – версия интерпретатора PHP.
Полный список предопределенных констант можно получить, прочитав руководство по PHP.
Слайд 20

ОПЕРАТОРЫ Приоритет оператора Арифметические операторы Оператор присваивания Побитовые операторы Операторы сравнения

ОПЕРАТОРЫ

Приоритет оператора
Арифметические операторы
Оператор присваивания
Побитовые операторы
Операторы сравнения
Оператор управления ошибками
Операторы исполнения
Операторы инкремента и

декремента
Логические операторы
Строковые операторы
Операторы, работающие с массивами
Оператор проверки типа
Слайд 21

Арифметические операторы

Арифметические операторы

Слайд 22

Строковые операторы

Строковые операторы

Слайд 23

Операторы присваивания

Операторы присваивания

Слайд 24

Логические операторы Смысл двух разных вариантов для операторов "and" и "or"

Логические операторы

Смысл двух разных вариантов для операторов "and" и "or" в

том,
что они работают с различными приоритетами.
Слайд 25

Логические операторы bool(true) bool(false) bool(false) bool(true)

Логические операторы

bool(true)
bool(false)
bool(false)
bool(true)

Слайд 26

Операторы сравнения $a = 5; // 5 как целое число (integer)

Операторы сравнения

$a = 5; // 5 как целое число

(integer)
($a == 5); // Сравниваются значения; Вернёт true
($a == '5'); // Сравниваются значения (игнорируя типы); Вернёт true
($a === 5); // Сравниваются типы и значения (integer vs. integer); Вернёт true
($a === '5'); // Сравниваются типы и значения (integer vs. string); Вернёт false
/* Строгое сравнение */
if (strpos('testing', 'test')) { // 'test' находится в 0 позиции, результатом будет 'false'
// Ваш код... }
if (strpos('testing', 'test') !== false) { // Результатом будет 'true', т.к. тут строгое сравнение (0 !== false)
// Ваш код... } ?>


Слайд 27

Операторы инкремента и декремента

Операторы инкремента и декремента

Слайд 28

Побитовые операторы

Побитовые операторы

Слайд 29

Операторы, работающие с массивами

Операторы, работающие с массивами