LibCoder

Изучаем PHP 7. Руководство по созданию интерактивных веб-сайтов

1C Agda PHP
Изучаем PHP 7. Руководство по созданию интерактивных веб-сайтов
Дата выхода: 2017
Издательство: Диалектика
Количество страниц: 382
Размер файла: 2,3 МБ
Тип файла: PDF
Добавил: LibCoder
Оглавление
Содержание....7 Предисловие....13 Кому адресована эта книга....13 Содержание книги....14 На кого не рассчитана эта книга....15 Другие ресурсы....16 Условные обозначения, принятые в книге....17 Условные обозначения в исходном коде....17 Условные обозначения в тексте книги....17 Пользование примерами кода....17 Посвящение....18 Благодарности....18 Об авторе....19 Изображение на обложке....20 От издательства....21 Глава 1. Краткое введение в РНР....22 Место РНР в мире Интернета....22 Достоинства РНР....25 Язык РНР свободно доступен (бесплатно)....25 Язык РНР свободно доступен (как речь)....25 РНР является межплатформенным языком....25 РНР является широко употребляемым языком....26 Сложности РНР скрыты внутри....26 Язык РНР предназначен для веб-разработки....26 РНР в действии....26 Основные правила написания программ на РНР....32 Начальные и конечные дескрипторы....32 Пробелы и учет регистра букв....33 Комментарии....35 Резюме....36 Глава 2. Обработка числовых и текстовых данных....37 Текст....37 Определение символьных строк текста....38 Манипулирование текстом....41 Числа....46 Применение разных типов чисел....47 Арифметические операции....47 Переменные....48 Выполнение операций над переменными....49 Вставка переменных в символьные строки....51 Резюме....52 Упражнения....53 Глава 3. Управляющая логика для принятия решений и повторения операций....55 Общее представление об истинности или ложности....56 Принятие решений....56 Принятие сложных решений....59 Повторение операций....66 Резюме....69 Упражнения....69 Глава 4. Группирование и обработка данных в массивах....71 Основы организации массивов....71 Создание массива....72 Выбор подходящего имени для массива....73 Создание числовых массивов....74 Определение размера массива....75 Перебор массивов....76 Модификация массивов....81 Сортировка массивов....84 Применение многомерных массивов....88 Резюме....91 Упражнения....92 Глава 5. Группирование логики в функциям и файлам....94 Объявление и вызов функций....95 Передача аргументов функциям....96 Возврат значений из функций....100 Представление об области действия переменных....104 Соблюдение правил относительно аргументов и возвращаемых значений....107 Выполнение кода из другого файла....109 Резюме....111 Упражнения....112 Глава 6. Оперирование объектами, объединяя данные и логику....114 Основы организации объектов....115 Конструкторы....117 Индикация ошибок с помощью исключений....118 Расширение объектов....120 Доступность свойств и методов....123 Пространства имен....124 Резюме....125 Упражнения....126 Глава 7. Создание веб-форм для обмена данными с пользователями....127 Полезные серверные переменные....131 Доступ к параметрам формы....131 Обработка форм с помощью функций....134 Проверка достоверности данных....136 Обязательные элементы формы....138 Числовые или строковые элементы формы....138 Диапазоны чисел....141 Адреса электронной почты....142 Списки, размечаемые дескриптором  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .143 HTML и JavaScript . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .145 Не только синтаксис . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .148 Отображение значений, устанавливаемых по умолчанию . . . . . . . . . . . . . . . . . . . . . . . . . . . .148 Собирая все вместе . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .151 Резюме . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .160 Упражнения . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .160 Глава 8. Хранение информации в базах данных . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .162 Организация информации в базе данных . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .163 Подключение к программе базы данных . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .164 Создание таблицы базы данных . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .166 Ввод информации в базу данных . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .168 Безопасный ввод данных из формы . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .174 Законченная форма для ввода записей в базу данных . . . . . . . . . . . . . . . . . . . . . . . . . . . . .176 Извлечение информации из базы данных . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .179 Изменение формата извлекаемых строк таблицы . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .183 Безопасное извлечение данных для формы . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .185 Законченная форма для извлечения записей из базы данных . . . . . . . . . . . . . . . . . . . . . . .187 Резюме . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .192 Упражнения . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .193 Глава 9. Манипулирование файлами . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .195 Представление о полномочиях доступа к файлам . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .195 Чтение и запись всего содержимого файлов . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .196 Чтение из файла . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .196 Запись в файл . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .197 Частичное чтение и запись файлов . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .198 Манипулирование файлами формата CSV . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .201 Проверка полномочий доступа к файлам . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .204 Выявление ошибок . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .205 Санобработка предоставляемых извне путей к файлам . . . . . . . . . . . . . . . . . . . . . . . . . . . . .208 Резюме . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .209 Упражнения . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .210 Глава 10. Сохранение сведений о пользователях в cookie-файлах и сеансах . . . . . . .212 Манипулирование cookie-файлами . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .213 Активизация сеансов . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .217 Сохранение и извлечение информации . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .218 Конфигурирование сеансов . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .221 Регистрация и идентификация пользователей . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .223 Причины для размещения вызовов функций setcookie() session_start() вначале страницы .230 Резюме . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .231 Упражнения . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .232 Глава 11. Взаимодействие с другими веб-сайтами и веб-службами . . . . . . . . . . . . . . . . .233 Простой доступ no URL с помощью функций манипулированияфайлами . . . . . . . . . . . . . . . .233 Универсальный доступ по URL с помощью расширения cURL . . . . . . . . . . . . . . . . . . . . . . . . .238 Извлечение данных по заданному URL методом GET . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .238 Извлечение данных по заданному URL методом POST . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .241 Применение cookie-файлов . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .242 Извлечение данных по HTTPS URL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .245 Обслуживание запросов API . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .245 Резюме . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .248 Упражнения . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .249 Глава 12. Отладка кода . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .250 Управление выводом сообщений об ошибках . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .250 Устранение синтаксических ошибок . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .251 Проверка данных в программе . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .254 Добавление операторов вывода отладочной информации . . . . . . . . . . . . . . . . . . . . . . . . . . . .255 Применение отладчика . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .258 Обработка неперехватываемых исключений . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .262 Резюме . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .263 Упражнения . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .264 Глава 13. Тестирование: проверка правильности работы программы . . . . . . . . . . . . . . . .266 Установка PHPUnit . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .266 Написание тестов . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .267 Изолирование тестируемого кода . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .270 Разработка посредством тестирования . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .273 Дополнительные сведения о тестировании . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .275 Резюме . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .276 Упражнение . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .276 Глава 14. Надлежащие нормы практики в программотехнике . . . . . . . . . . . . . . . . . . . . . . . .278 Контроль версий исходного кода . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .278 Отслеживание ошибок . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .279 Среды и разработка . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .280 Масштабирование в перспективе . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .281 Резюме . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .282 Глава 15. Манипулирование датами и временем . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .284 Отображение даты или времени . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .284 Синтаксический анализ даты и времени . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .288 Расчет даты и времени . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .290 Манипулирование часовыми поясами . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .291 Резюме . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .291 Глава 16. Управление пакетами . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .293 Установка системы Composer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .293 Ввод пакета в программу на РНР . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .293 Поиск пакетов . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .295 Дополнительные сведения о системе Composer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .296 Резюме . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .296 Глава 17. Отправка сообщений по электронной почте . . . . . . . . . . . . . . . . . . . . . . . . . . . . .298 Библиотека Swift Mailer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .298 Резюме . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .300 Глава 18. Каркасы . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .301 Laravel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .302 Symfony . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .303 Zend Framework . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .305 Резюме . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .306 Глава 19. Применение РНР в режиме командной строки . . . . . . . . . . . . . . . . . . . . . . . . . . . .308 Написание консольных программ на РНР . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .308 Применение веб-сервера, встроенного в РНР . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .310 Выполнение цикла РНР REPL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .311 Резюме . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .312 Глава 20. Интернационализация и локализация . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .314 Манипулирование текстом . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .314 Сортировка и сравнение . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .316 Локализация выводимых результатов . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .317 Резюме . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .319 Приложение А. Установка и конфигурирование интерпретатора РНР . . . . . . . . . . . . . . . . .320 Применение интерпретатора РНР, предоставляемого поставщи-ком услуг веб-хостинга .320 Установка интерпретатора РНР . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .320 Установка интерпретатора РНР в Mac OS X . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .321 Установка интерпретатора РНР в Linux . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .322 Установка интерпретатора PHP в Windows . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .322 Видоизменение директив конфигурации РНР . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .322 Резюме . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .329 Приложение Б. Ответы на упражнения . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .330 Глава 2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .330 Упражнение 1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .330 Упражнение 2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .330 Упражнение 3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .330 Упражнение 4 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .331 Упражнение 5 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .331 Глава 3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .331 Упражнение 1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .331 Упражнение 2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .332 Упражнение 3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .332 Упражнение 4 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .332 Глава 4 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .332 Упражнение 1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .332 Упражнение 2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .332 Упражнение 3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .333 Упражнение 4 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .334 Глава 5 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .335 Упражнение 1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .335 Упражнение 2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .336 Упражнение 3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .336 Упражнение 4 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .336 Упражнение 5 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .337 Глава 6 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .337 Упражнение 1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .337 Упражнение 2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .337 Упражнение 3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .338 Упражнение 4 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .338 Глава 7 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .339 Упражнение 1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .339 Упражнение 2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .340 Упражнение 3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .340 Упражнение 4 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .342 Упражнение 5 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .347 Глава 8 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .347 Упражнение 1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .347 Упражнение 2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .348 Упражнение 3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .350 Упражнение 4 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .353 Глава 9 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .356 Упражнение 1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .356 Упражнение 2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .357 Упражнение 3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .358 Упражнение 4 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .358 Упражнение 5 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .360 Глава 10 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .361 Упражнение 1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .361 Упражнение 2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .361 Упражнение 3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .362 Упражнение 4 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .364 Глава 11 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .367 Упражнение 1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .367 Упражнение 2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .368 Упражнение 3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .368 Упражнение 4 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .368 Глава 12 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .369 Упражнение 1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .369 Упражнение 2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .370 Упражнение 3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .370 Упражнение 4 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .371 Глава 13 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .372 Упражнение 2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .372 Упражнение 3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .372 Упражнение 4 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .374 Предметный указатель....377

Описание

Коротко и по делу о том, что важно знать про требуется.

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

Эта книга адресована тем, кто проявляет интерес к веб-разработке, обладает достаточной сообразительностью, но не имеет необходимой технической подготовки, а также программирующим на других языках и стремящимся овладеть РНР.Если программирование для вас совершенно внове и вы собираетесь построить свой первый интерактивный веб-сайт, значит, вы выбрали нужную книгу. Любители, которым требуется создать интерактивный веб-сайт для себя, своей семьи или общественной организации.Разработчики или проектировщики, которым требуется подключаемый модуль или расширение для распространенного программного обеспечения, написанного на РНР (например, Drupal, WordPress или MediaWiki).Дизайнеры веб-страниц, которым требуется более тесная связь с коллегами-разработчиками.Программирующие на JavaScript, которым требуется писать серверные программы, дополняющие их клиентский код.Программирующие на Perl, Python или Ruby, которым требуется моментально освоить РНР.Все, кому требуется простое и понятное введение в один из самых распространенных языков  программирования, предназначенных для создания динамических веб-сайтов.Постепенное изучение РНР и доступный синтаксис делает этот язык идеальным “преддверием” для создателей веб-сайтов без специальной технической подготовки. В ее начальных главах дается постепенное введение в синтаксис языка РНР и основные понятия программирования на компьютере применительно к РНР. Поэтому изучайте материал этой книги с самого начала, постепенно продвигаясь вперед.

На этом основные моменты по теме закрыты.

требуется которым сайтов интерактивный сайт программирующие введение программирования

Частые вопросы

Можно ли скачать «Изучаем PHP 7. Руководство по созданию интерактивных веб-сайтов» бесплатно?

Да, «Изучаем PHP 7. Руководство по созданию интерактивных веб-сайтов» доступна для бесплатного скачивания на нашем сайте в формате PDF. Ссылка на файл находится на этой странице.

В каком формате и какого размера файл?

Книга предоставляется в формате PDF, размер файла 2,3 МБ.

Кто автор и когда вышла книга?

автор — Скляр Дэвид, издательство Диалектика, год выпуска 2017, 382 страниц.

О чём книга «Изучаем PHP 7. Руководство по созданию интерактивных веб-сайтов»?

Она будет полезной разным категориям читателей, включая следующие:Любители, которым требуется создать интерактивный веб-сайт для себя, своей семьи или общественной организации.Разработчики или проектировщики, которым требуется подключаемый

Похожие материалы