Книга опытных разработчиков описывает последнюю версию языка разработки серверных сценариев РНР 7. Рассмотрены все нововведения языка и связанные с ними изменения в разработке современных Wеb-сайтов. Изложение ведется с упором на объектно-ориентированное программирование, шаблоны проектирования, итераторы, генераторы, а также взаимодействие с современными базами данных (PostgreSQL и Redis).
В конце глав приведены более 100 заданий для закрепления материала и освоения не вошедших в книгу разделов языка.
- Простейший PHP-скрипт.
- Альтернативные теги.
- Допускается несколько PHP-вставок в HTML-код.
- Завершающий тег ?> можно опустить.
- Использование точки с запятой.
- Альтернативная запись скрипта из листинга 3.5.
- Составное выражение.
- Составное выражение в нескольких PHP-вставках.
- Комментарии.
- Комментарии действуют только внутри <?php и ?>.
- Комментарий в списке аргументов функции.
- Использование инструкции include.
- included.php
- Зависимость переменных от регистра.
- Объявление чисел.
- Инициализация переменных одним значением.
- Объявление целочисленных переменных.
- Объявление вещественных чисел.
- Объявление переменной логического типа.
- Объявление строки.
- Двойные кавычки.
- Подстановка переменной.
- Экранирование символа $.
- Экранирование двойных кавычек.
- Одиночные кавычки.
- Границы переменной.
- Использование обратных кавычек.
- Использование последовательности <<<.
- Использование переменных в последовательности <<<.
- Обращение к несуществующей переменной.
- Использование константы null.
- Использование конструкции unset().
- Использование конструкции isset().
- Использование конструкции empty().
- Использование функции gettype().
- Использование функции is_int().
- Использование функций is_float() и is_double().
- Использование функций gettype() при анализе типов данных float и double.
- Автоматическое преобразовние строки в число.
- Преобразование сложных строк в число.
- Преобразование к логическому типу.
- Преобразовние типа float к int.
- Определение четности числа.
- Использование функции settype().
- Использование функции intval().
- Создание динамической переменной.
- Использование функции eval().
- Динамическое имя переменной.
- cast_resource.php
- Объявление класса.
- Класс точки Point.
- Попытка повторного определения класса Point.
- Попытка повторного включения класса Point.
- Удачная попытка повторного включения класса Point.
- Создание объекта точки.
- Объект - это обычная переменная.
- Явное уничтожение объекта.
- Попытка использование переменной класса.
- Класс PrivatePoint.
- Попытка присваивания значений переменным объкта.
- Переменные объекта независимы.
- Объявление статической переменной.
- Использование статических переменных.
- Оператор = с переменными.
- Оператор = с объектами.
- Создание ссылок для обычных переменных.
- Клонирование объекта.
- Создание констант.
- Создание констант, не зависящих от регистра.
- Попытка переопределения константы.
- Использование функции defined().
- Использование функции constant().
- Константа с динамическим именем.
- Использование предопределённых констант.
- Объявление констант в классах.
- Проверка существования констант.
- Использование оператора "точка".
- Альтернативная запись.
- Использование оператора .=.
- Использование оператора "запятая".
- Использование круглых скобок в echo.
- Использование строковой функции print().
- Использование арифметических операторов.
- Использование оператора деления /.
- Получение целочисленного результата деления.
- Получение остатка от деления.
- Проверка числа на чётность.
- Квадратный корень числа.
- Префикс, постфикс.
- Использование оператора инкремента.
- Применение инкремента к строке.
- Использование оператора &.
- Более сложное использование оператора &.
- Использование оператора |.
- Использование оператора ^.
- Использование оператора ~.
- Использование оператора <<.
- Использование оператора >>.
- Использование операторов сравнения.
- Использование операторов эквивалентности.
- Использование условного оператора.
- Сокращенная запись оператора if.
- Использование конструкции if ... elseif.
- Альтернативный синтаксис оператора if.
- Использование оператора && (логическое И).
- Альтернативное представление двойного условия.
- Двойное условие совместно с блоком else.
- Неудачное дублирование кода.
- Использование оператора || (логическое ИЛИ).
- Использование оператора or (логическое ИЛИ).
- Проверка выполнения функции.
- Получение содержимого файла.
- Удачное получение содержимого файла.
- Неудачное получение содержимого файла.
- Проверка выполнения функции.
- Неудачное получение содержимого файла.
- Использование условного оператора.
- Использование значения по умолчанию.
- Пример использования оператора switch.
- Вывод чисел.
- Альтернативная форма оператора switch.
- Перепишим с помощью if.
- Использование сложных логических условий.
- Сложный swith
- Использование оператора goto.
- Использование оператора while.
- Использование оператора while.
- Использование оператора break.
- Пример оператора continue.
- break во вложенных циклах.
- Указание номера цикла в операторе break.
- Прерывание внешнего цикла из внутреннего.
- Условный цикл while.
- Декремент в while.
- Альтернативный синтаксис оператора while.
- Использование оператора do...while.
- Использование цикла for.
- Использование декремента в цикле for.
- Альтернативное использование цикла for.
- Несколько переменных в блоке инициализации.
- Использование шага равного 5.
- Отсутствие выражения начало и тело.
- Отсутствие выражений в цикле for.
- Программа нахождения простых чисел.
- Альтернативный синтаксис оператора for.