PHP Скляр Д.PHP купитьPHP. Рецепты программирования. 3-е изд.PHP. Рецепты программирования. 3-е изд. Скляр Д.PHP. Рецепты программирования. 3-е изд. купить
PHP
PHP Скляр Д.
PHP купить
PHP. Рецепты программирования. 3-е изд.
PHP. Рецепты программирования. 3-е изд. Скляр Д.
PHP. Рецепты программирования. 3-е изд. купить

PHP. Рецепты программирования. 3-е изд., Скляр Д.

549 грн.

Артикул: pit093 Категория: Метки: ,

Описание

Здесь можно купить: PHP. Рецепты программирования. 3-е изд., Скляр Д. книга

Издательство — Питер

Язык — русский

Обложка — Мягкая обложка

Год издания — 2015

Количество страниц — 784

ISBN — 978-5-496-01592-9

Бумага — белая, офсетная

О книге PHP. Рецепты программирования. 3-е изд., Скляр Д.

Третье издание этой популярной книги представляет собой подборку готовых решений наиболее распространенных задач на языке РНР. Изложен материал, интересный каждому разработчику: базовые типы данных, операции с ними, файлы cookie, функции РНР, аутентификация пользователей, работа со слоями, проблемы безопасности, ускорение действия программ, работа в сети, создание графических изображений, обработка ошибок, отладка сценариев и написание тестов. Даны рецепты, затрагивающие основы объектно-ориентированного программирования и новые функциональные возможности РНР. Каждый рецепт является самодостаточным и показывает весь путь решения задачи. Третье издание книги полностью обновлено под версию PHP 5.4, а также включает ряд новых разделов по работе с данными.

PHP. Рецепты программирования. 3-е изд., Скляр Д. оглавление

Предисловие

Для кого предназначена эта книга

О чем говорится в книге

Другие ресурсы

Благодарности

Глава 1 . Строки

.0 . Введение

.1 . Обращение к подстрокам

.2 . Выделение подстрок

.3 . Замена подстрок

.4 . Обработка строки по одному байту

.5 . Обратная перестановка строки по словам или байтам

.6 . Генерирование случайной строки

.7 . Сжатие и свертка табуляций

.8 . Управление регистром символов

.9 . Интерполяция функций и выражений в строках

. Удаление начальных или конечных пропусков в строке

. Генерирование данных, разделенных запятыми

. Разбор данных, разделенных запятыми

. Генерирование записей с полями фиксированной длины

. Разбор данных с полями фиксированной длины

. Разбиение строк на фрагменты

. Перенос текста по заданной длине строки

. Хранение двоичных данных в строках

. Программа: загрузка файла в формате CSV

Глава 2 . Числа

.0 . Введение

.1 . Проверка значения переменной

.2 . Сравнение чисел с плавающей точкой

.3 . Округление чисел с плавающей точкой

.4 . Работа с последовательностями целых чисел

.5 . Генерирование случайных чисел в заданном диапазоне

.6 . Генерирование предсказуемых случайных чисел

.7 . Генерирование случайных чисел с неравномерным распределением

82 .8 . Вычисление логарифмов

.9 . Вычисление экспоненты

. Форматирование чисел

. Форматирование денежных сумм

. Вывод формы множественного числа

. Вычисление тригонометрических функций

. Выполнение тригонометрических операций в градусах

. Работа с очень большими или очень малыми числами

. Преобразование между системами счисления

. Математические операции в других системах счисления

. Определение расстояния между двумя географическими точками

Глава 3 . Дата и время

.0 . Введение

.1 . Определение текущей даты и времени

.2 . Преобразование компонентов времени и даты во временную метку

.3 . Преобразование временной метки в компоненты времени и даты

.4 . Вывод даты или времени в заданном формате

.5 . Вычисление разности двух дат

.6 . Определение дня недели, месяца или года

.7 . Проверка существования введенной даты

.8 . Разбор строк даты и времени

.9 . Операции сложения и вычитания с датами

. Вычисление времени с учетом часовых поясов и летнего времени

. Получение времени с высокой точностью

. Генерирование временных диапазонов

. Использование негригорианских календарей

. Программа: календарь

Глава 4 . Массивы

.0 . Введение

.1 . Определение массивов с начальным индексом, отличным от 0

.2 . Хранение нескольких элементов для каждого ключа

.3 . Инициализация массива диапазоном целых чисел

.4 . Перебор элементов массива

.5 . Удаление элементов из массива

.6 . Изменение размера массива

.7 . Слияние массивов

.8 . Преобразование массива в строку

.9 . Вывод массива с разделением запятыми

. Проверка присутствия ключа в массиве

94

. Проверка присутствия элемента в массиве

. Определение позиции значения в массиве

. Поиск элементов, удовлетворяющих некоторому условию

. Поиск элемента с наибольшим или наименьшим значением

. Перестановка в обратном порядке

. Сортировка массива

. Сортировка массива по вычисляемому полю

. Сортировка нескольких массивов

. Сортировка массива с использованием метода вместо функции

. Случайная перестановка

. Удаление дубликатов из массива

. Применение функции к каждому элементу массива

. Вычисление объединения, пересечения и разности двух массивов

. Эффективный перебор больших или высокозатратных наборов данных

. Работа с объектом в синтаксисе массива

Глава 5 . Переменные

.0 . Введение

.1 . Предотвращение путаницы между == и =

.2 . Определение значения по умолчанию

.3 . Переключение значений без использования временных переменных

.4 . Динамическое создание имени переменной

.5 . Сохранение значения локальной переменной между вызовами функции

.6 . Совместный доступ к переменным между процессами

.7 . Строковое представление сложных типов данных

.8 . Вывод содержимого переменной в строковом виде

Глава 6 . Функции

.0 . Введение

.1 . Обращение к параметрам функции

.2 . Определение значений по умолчанию для параметров функции

.3 . Передача по ссылке

.4 . Именованные параметры

.5 . Контроль типа аргументов

.6 . Создание функций с переменным количеством аргументов

.7 . Возвращение значений по ссылке

.8 . Возвращение нескольких значений из функции

.9 . Пропуск отдельных возвращаемых значений

. Возвращение признака ошибки

. Вызов разных функций в зависимости от значения переменной

. Обращение к глобальной переменной внутри функции

. Создание динамических функций

10Глава 7 . Классы и объекты

.0 . Введение

.1 . Создание объектов

.2 . Определение конструкторов

.3 . Определение деструкторов объектов

.4 . Управление доступом

.5 . Запрет на изменение классов и методов

.6 . Определение строкового представления объекта

.7 . Результат сходного поведения в разных классах

.8 . Создание абстрактных базовых классов

.9 . Присваивание ссылок на объекты

. Клонирование объектов

. Переопределение обращений к свойствам

. Вызов методов объекта, возвращаемого другим методом

. Композиция объектов

. Обращение к переопределенным методам

. Динамическое создание методов

. Полиморфизм методов

. Определение констант класса

. Определение статических методов и свойств

. Управление сериализацией объектов

. Интроспекция

. Проверка объекта на принадлежность к определенному классу

. Автоматическая загрузка файлов классов при создании объекта

. Динамическое создание объекта

. Программа: whereis

Глава 8 . Основы веб-программирования

.0 . Введение

.1 . Запись cookie

.2 . Чтение cookie

.3 . Удаление cookie

.4 . Построение строки запроса

.5 . Чтение тела запроса POST

.6 . Использование аутентификации HTTP

.7 . Аутентификация с использованием cookie

.8 . Чтение заголовка HTTP

.9 . Запись заголовка HTTP

. Отправка конкретного кода статуса HTTP

. Перенаправление запросов

. Принудительная отправка вывода браузеру

118

. Буферизация вывода

. Сжатие вывода

. Чтение переменных окружения

. Запись переменных окружения

. Взаимодействие с Apache

. Перенаправление мобильных браузеров

. Программа: (де)активизация учетных записей

. Программа: Tiny Wiki

. Программа: HTTP Range

Глава 9 . Формы

.0 . Введение

.1 . Обработка ввода

.2 . Проверка ввода на форме: обязательные поля

.3 . Проверка ввода на форме: числа

.4 . Проверка ввода на форме: адреса электронной почты

.5 . Проверка ввода на форме: раскрывающиеся меню

.6 . Проверка ввода на форме: переключатели

.7 . Проверка ввода на форме: флажки

.8 . Проверка ввода на форме: дата и время

.9 . Проверка ввода на форме: кредитные карты

. Предотвращение межсайтовых сценарных атак

. Обработка отправленных файлов

. Работа с многостраничными формами

. Повторное отображение форм со встроенными сообщениями

об ошибках

. Защита от повторной отправки одной формы

. Предотвращение внедрения глобальных переменных

. Работа с переменными, имена которых содержат точки

. Использование элементов форм с множественным выбором

. Создание раскрывающихся меню на основании текущей даты

Глава 10 . Базы данных

.0 . Введение

.1 . Использование баз данных DBM

.2 . Использование базы данных SQLite

.3 . Подключение к базе данных SQL

.4 . Запрос к базе данных SQL

.5 . Выборка строк данных без цикла

.6 . Модификация данных в базах данных SQL

.7 . Эффективное повторение запросов

.8 . Получение количества строк данных, возвращаемых запросом

1210 .9 . Экранирование в запросах

. Работа с журналом отладочной информации и сообщений об ошибках

34810

. Создание уникальных идентификаторов

. Программное построение запросов

. Создание страничных ссылок на серии записей

. Кэширование запросов и результатов

. Использование подключения к базе данных в любой точке программы

36210

. Программа: база данных сообщений интернет-форума

. Использование Redis

Глава 11 . Сеансы и долгосрочное хранение данных

.0 . Введение

.1 . Отслеживание сеанса

.2 . Предотвращение перехвата сеанса

.3 . Предотвращение фиксации сеанса

.4 . Хранение сеансовых данных в Memcached

.5 . Хранение сеансовых данных в базе данных

.6 . Хранение произвольных данных в общей памяти

.7 . Кэширование вычисленных результатов в сводных таблицах

Глава 12 . XML

.0 . Введение

.1 . Генерирование XML в строковом формате

.2 . Генерирование XML с использованием DOM

.3 . Разбор базовых документов XML

.4 . Разбор сложных документов XML

.5 . Разбор больших документов XML

.6 . Извлечение информации с использованием XPath

.7 . Преобразование XML с использованием XSLT

.8 . Настройка параметров XSLT из PHP

.9 . Вызов функций PHP из таблиц стилей XSLT

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

. Преобразование кодировки контента

. Чтение каналов RSS и Atom

. Генерирование каналов RSS

. Генерирование каналов Atom

Глава 13 . Автоматизация в веб-приложениях

.1 . Пометки в веб-страницах

.2 . Удаление некорректной или нестандартной разметки HTML

.3 . Извлечение ссылок из файлов HTML

.4 . Преобразование простого текста в HTML

1313 .5 . Преобразование HTML в простой текст

.6 . Удаление тегов HTML и PHP

.7 . Обработка запросов Ajax

.8 . Интеграция с JavaScript

.9 . Программа: поиск устаревших ссылок

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

Глава 14 . Потребление REST-совместимых API

.0 . Введение

.1 . Получение данных по URL-адресу методом GET

.2 . Обращение по URL-адресу с методом POST и данными формы

.3 . Обращение по URL-адресу с произвольным методом и телом POST

.4 . Обращение по URL-адресу с cookie

.5 . Обращение по URL-адресу с произвольными заголовками

.6 . Обращение по URL-адресу с тайм-аутом

.7 . Обращение по URL-адресу по протоколу HTTPS

.8 . Отладка низкоуровневой передачи данных HTTP

.9 . Выдача запросов OAuth 1 .0

. Выдача запросов OAuth 2 .0

Глава 15 . Предоставление доступа к REST-совместимым API

.0 . Введение

.1 . Предоставление доступа к ресурсу и обработка запроса

.2 . Использование «чистых» путей для доступа к ресурсам

.3 . Предоставление доступа к ресурсу для чтения

.4 . Создание ресурса

.5 . Редактирование ресурса

.6 . Удаление ресурса

.7 . Сообщения об ошибках и сбоях

.8 . Поддержка нескольких форматов

Глава 16 . Сервисы Интернета

.0 . Введение

.1 . Отправка почты

.2 . Отправка почты с контентом MIME

.3 . Чтение почты с использованием протокола IMAP или POP3

.4 . Получение и отправка файлов с использованием протокола FTP

.5 . Поиск адресов с использованием LDAP

.6 . Использование сервера LDAP для аутентификации пользователей

.7 . Выполнение поиска DNS

.8 . Проверка доступности хоста

.9 . Получение информации о доменном имени

14Глава 17 . Графика

.0 . Введение

.1 . Рисование линий, прямоугольников и многоугольников

.2 . Рисование дуг, эллипсов и кругов

.3 . Рисование узорных линий

.4 . Вывод текста

.5 . Выравнивание текста по центру

.6 . Построение динамических изображений

.7 . Назначение и получение цвета прозрачности

.8 . Наложение водяных знаков

.9 . Создание миниатюр

. Чтение данных EXIF

. Защита изображений

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

Глава 18 . Безопасность и шифрование

.0 . Введение

.1 . Предотвращение фиксации сеанса

.2 . Защита от фальсификации форм

.3 . Обеспечение фильтрации входных данных

.4 . Предотвращение межсайтовых сценарных атак

.5 . Предотвращение внедрения SQL

.6 . Хранение паролей отдельно от файлов

.7 . Хранение паролей

.8 . Восстановление утраченных паролей

.9 . Проверка данных с использованием хешей

. Шифрование и дешифрование данных

. Хранение шифрованных данных в файле или в базе данных

. Обмен зашифрованными данными с другим сайтом

. Обнаружение SSL

. Шифрование электронной почты и GPG

Глава 19 . Интернационализация и локализация

.0 . Введение

.1 . Определение локального контекста пользователя

.2 . Локализация текстовых сообщений

.3 . Локализация даты и времени

.4 . Локализация числовых данных

.5 . Локализация денежных сумм

.6 . Локализация графики

.7 . Локализация включаемых файлов

.8 . Сортировка с учетом локального контекста

1519 .9 . Управление ресурсами локализации

. Выбор кодировки символов для выходных данных

. Назначение кодировки символов для входных данных

. Работа с текстом в кодировке UTF-8

Глава 20 . Обработка ошибок

.0 . Введение

.1 . Поиск и исправление ошибок разбора

.2 . Создание классов исключений

.3 . Вывод трассировки стека

.4 . Чтение конфигурационных переменных

.5 . Присваивание значений конфигурационным переменным

.6 . Сокрытие сообщений об ошибках от пользователей

.7 . Настройка обработки ошибок

.8 . Применение пользовательских обработчиков ошибок

.9 . Регистрация ошибок

. Устранение ошибок «заголовки уже отправлены»

. Сохранение отладочной информации

Глава 21 . Технология программирования

.0 . Введение

.1 . Использование отладочного расширения

.2 . Написание модульного теста

.3 . Написание пакета модульных тестов

.4 . Применение модульного теста к веб-странице

.5 . Настройка среды тестирования

.6 . Использование встроенного веб-сервера

Глава 22 . Оптимизация

.0 . Введение

.1 . Использование акселератора

.2 . Хронометраж выполнения функций

.3 . Хронометраж функций

.4 . Хронометраж по командам

.5 . Хронометраж по секциям

.6 . Профилирование с отладочным расширением

.7 . Нагрузочное тестирование сайта

.8 . Альтернативы для регулярных выражений

Глава 23 . Регулярные выражения

.0 . Введение

.1 . Переход с ereg на preg

.2 . Поиск слов

1623 .3 . Поиск n-го совпадения

.4 . Выбор между максимальным и минимальным совпадением

.5 . Поиск в файле всех строк, соответствующих шаблону

.6 . Выделение текста из тегов HTML

.7 . Незахватывающие круглые скобки

.8 . Экранирование специальных символов в регулярных выражениях

.9 . Чтение записей с разделителями-шаблонами

. Использование функции PHP в регулярном выражении

Глава 24 . Файлы

.0 . Введение

.1 . Создание или открытие локального файла

.2 . Создание временного файла

.3 . Дистанционное открытие файла

.4 . Чтение из стандартного ввода

.5 . Чтение файла в строку

.6 . Подсчет строк, абзацев или записей в файле

.7 . Обработка каждого слова в файле

.8 . Выбор случайной строки из файла

.9 . Случайная перестановка всех строк в файле

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

. Чтение конфигурационных файлов

. Изменение файла «на месте» без использования временного файла

. Сброс буферизованного вывода в файл

. Запись в стандартный вывод

. Одновременная запись по нескольким файловым дескрипторам

. Экранирование метасимволов командного процессора

. Передача входных данных программе

. Получение стандартного вывода от программ

. Получение стандартного потока ошибок от программы

. Блокировка файла

. Чтение и запись нестандартных типов файлов

. Чтение и запись сжатых файлов

Глава 25 . Каталоги

.0 . Введение

.1 . Чтение и запись временных меток

.2 . Чтение метаданных

.3 . Изменение разрешений или владельца файла

.4 . Получение компонентов имени файла

.5 . Удаление файла

.6 . Копирование и перемещение файла

17 25 .7 . Обработка всех файлов в каталоге

.8 . Получение списка файлов по шаблону

. Создание новых каталогов

. Удаление каталога и его содержимого

. Программа: вывод содержимого каталога веб-сервера

. Программа: поиск по сайту

Глава 26 . PHP в режиме командной строки

.0 . Введение

.1 . Разбор аргументов

.2 . Разбор аргументов функцией getopt

.3 . Чтение с клавиатуры

.4 . Выполнение кода PHP для каждой строки входного файла

.5 . Чтение паролей

.6 . Консольный вывод в цвете

.7 . Программа: DOM Explorer

Глава 27 . Пакеты

.0 . Введение

.1 . Определение и установка зависимостей Composer

.2 . Поиск пакетов Composer

.3 . Установка пакетов Composer

.4 . Использование программы установки PEAR

.5 . Поиск пакетов PEAR

.6 . Поиск информации о пакете

.7 . Установка пакетов PEAR

.8 . Обновление пакетов PEAR

.9 . Удаление пакетов PEAR

. Установка пакетов PECL

Об авторах

Также вы можете оставить вопрос или отзыв о книге: PHP. Рецепты программирования. 3-е изд., Скляр Д.

Отзывы

Отзывов пока нет.

Будьте первым, кто оставил отзыв на “PHP. Рецепты программирования. 3-е изд., Скляр Д.”

Ваш e-mail не будет опубликован. Обязательные поля помечены *