PHP


1. Строки
Анализ данных, разделенных запятой
Анализ данных, состоящих из полей фиксированной ширины
Включение функций и выражений в строки
Доступ к подстрокам
Замещение подстрок
Посимвольная обработка строк
Пословный или посимвольный переворот строки
Разбиение строк
Расширение и сжатие табуляций
Удаление пробельных символов из строки
Упаковка текста в строки определенной длины
Управление регистром
Хранение двоичных данных в строках

2. Числа
Взятие логарифмов
Вычисление степеней
Вычисление тригонометрических функций
Вычисления с не десятичными числами
Генерация случайных чисел в пределах диапазона
Генерация случайных чисел со смещением
Округление чисел с плавающей точкой
Правильная печать слов во множественном числе
Преобразование из одной системы счисления в другую
Проверка правильности записи числа в строке
Работа с очень большими и очень маленькими числами
Работа с последовательностью целых чисел
Сравнение чисел с плавающей точкой
Форматирование чисел

3. Дата и время
Вывод на печать даты и времени в определенном формате
Выделение дат и времен из строк
Выработка высокоточного времени
Определение дня недели, месяца, года или номера недели в году
Определение разности между датами юлианского календаря
Определение разности между двумя датами
Определение текущей даты и времени
Получение интервалов времени
Преобразование времени и частей времени в метку времени UNIX
Преобразование метки времени в части времени и даты
Проверка корректности даты
Программа: Календарь
Работа с негригорианскими календарями
Сложение и вычитание дат
Учет перехода на летнее время
Учет часовых поясов при определении времени

4. Массивы
Добавление одного массива к другому
Изменение длины массива
Инициализация массива диапазоном
Инициализация массива диапазоном целых чисел
Нахождение всех перестановок массива
Нахождение элемента массива с наибольшим или наименьшим значением
Нахождение элементов, удовлетворяющих определенному критерию
Обращение массива
Определение всех комбинаций элементов массива
Определение массива с ненулевым начальным индексом
Определение объединения, пересечения или разности двух массивов
Определение позиции элемента в массиве
Перебор элементов массива
Печать массивов с запятыми
Преобразование массива в строку
Проверка наличия ключа в массиве
Проверка наличия элемента в массиве
Программа: Печать массива в виде HTML-таблицы
Рандомизация массива
Сортировка массива
Сортировка массива по вычисляемому полю
Сортировка массива с использованием метода вместо функции
Сортировка множества массивов
Тасование колоды карт
Удаление двойных элементов из массива
Удаление элементов из массива
Хранение множества элементов массива

5. Переменные
Обмен значениями без временных переменных
Операторы == и =: как избежать путаницы
Получение дампа содержимого переменных в виде строк
Сериализация данных сложных типов в виде строки
Совместное использование переменных процессами
Создание динамического имени переменной
Статические переменные
Установка значения по умолчанию

6. Функции
Возвращение более одного значения
Возвращение значений по ссылке
Возвращение информации об ошибке
Вызов переменных функций
Доступ к глобальной переменной внутри функции
Доступ к параметрам функций
Именованные параметры
Передача значений по ссылке
Пропуск определенных возвращаемых значений
Создание динамических функций
Создание функции, принимающей переменное количество аргументов
Установка значений по умолчанию для параметров функции

7. Классы и объекты
Динамическая реализация объекта
Динамическое создание класса
Добавление свойств в базовый объект
Доступ к переопределенным методам
Клонирование объектов
Обнаружение методов и свойств объекта
Определение конструкторов объектов
Перегрузка свойств
Полиморфизм методов
Применение методов к объекту, возвращенному другим методом
Присваивание ссылок на объекты
Реализация объектов
Уничтожение объекта

8. Основы Web
Аутентификация, основанная на cookies
Буферизация вывода в броузер
Взаимодействие в рамках Apache
Идентификация различных броузеров
Настройка обработки ошибок
Отслеживание сеанса работы с сайтом
Передача выходной информации в броузер
Перенаправление по другому адресу
Применение базовой аутентификации HTTP
Применение пользовательского обработчика ошибок
Программа: (Де)активатор учетной записи на веб-сайте
Программа: Контролер злоумышленных пользователей
Профилирование программы
Регистрация отладочной информации
Регистрация ошибок
Сжатие веб-вывода с помощью gzip
Сокрытие от пользователей сообщений об ошибках
Удаление cookies
Установка cookies
Установка конфигурационных переменных
Установка переменных окружения
Устранение ошибок «headers already sent» (заголовки уже посланы)
Формирование строки запроса GET
Хранение сеансов в базе данных
Чтение значений cookie
Чтение конфигурационных переменных
Чтение переменных окружения

9. Формы
Защита от многократной отправки одной и той же формы
Использование элементов формы с несколькими вариантами значений
Кэширование запросов и результатов
Обработка внешних переменных с точками в именах
Обработка загруженных файлов
Обработка информации, полученной из формы
Организация безопасности обработки форм в PHP
Повторный вывод форм с информацией и сообщениями об ошибках
Пользовательские данные и escape-последовательности
Проверка корректности введенных в форму данных
Программа: Хранение сообщений форума, разбитых на темы
Работа с многостраничными формами
Создание выпадающих меню на основе текущей даты

10. Доступ к базам данных
Автоматическое присваивание уникальных значений идентификаторов
Выполнение запросов к базе данных SQL
Извлечение строк без цикла
Кэширование запросов и результатов
Модификация данных в базе данных SQL
Определение количества строк, возвращенных запросом
Постраничный вывод большого количества записей
Преобразование кавычек в еscapе-последовательности
Программа: Хранение сообщений форума, разбитых на темы
Программное создание запросов
Работа с базами данных DBM
Работа с базами данных, состоящих из текстовых файлов
Регистрация отладочной информации и ошибок
Соединение с базой данных SQL
Эффективное повторение запросов

11. Автоматизация работы с Web
Анализ файла протокола веб-сервера
Выделение информации на веб-странице
Извлечение содержимого URL с помощью метода POST
Извлечение ссылок из HTML-файла
Использование шаблонов системы Smarty
Отладка обмена заголовками HTTP
Получение содержимого HTTPS URL
Получение содержимого URL методом GET
Получение содержимого URL, если требуется отправить cookies
Получение содержимого URL, требующее отправки заголовков
Преобразование ASCII в HTML
Преобразование HTML в ASCII
Программа: Обнаружение свежих ссылок
Программа: обнаружение устаревших сылок
Удаление тегов HTML и PHP

12. XML
Анализ XML с помощью DOM
Анализ XML с помощью SAX
Генерация XML вручную
Генерация XML с применением DOM
Обмен данными с помощью WDDX
Посылка SOAP-запросов
Посылка запросов XML-RPC
Преобразование XML с помощью XSLT
Прием SOAP-запросов
Прием запросов XML-RPC
Чтение RSS-рассылок

13. Регулярные выражения
Выбор между поглощающим и непоглощающим сравнением
Нахождение n-го совпадения
Переход от ereg к preg
Поиск в файле всех строк, соответствующих шаблону
Поиск слов
Проверка правильности адресов электронной почты
Сборка текста, заключенного в теги HTML
Чтение записей с шаблоном-разделителем
Экранирование специальных символов внутри регулярного выражения

14. Шифрование и безопасность
Не храните пароли на своем сайте
Обнаружение SSL-соединения
Проверка данных с помощью хеширования
Проверка надежности пароля
Работа с потерянными паролями
Совместное использование зашифрованных данных с другим веб-сайтом
Сокрытие данных при помощи кодирования
Хранение зашифрованных данных в файле или базе данных
Хранение паролей
Шифрование и дешифрование данных
Шифрование сообщений электронной почты с помощью GPG

15. Графика
Безопасная работа с изображениями
Построение динамических изображений
Программа: создание гистограмм результатов голосования
Рисование дуг, эллипсов и окружностей
Рисование линий, прямоугольников и многоугольников
Рисование текста
Рисование узорными линиями
Рисование центрированного текста
Создание и установка прозрачного цвета

16. Интернационализация и локализация
Использование определенной локали
Локализация включаемых файлов
Локализация дат и времени
Локализация денежных значений
Локализация изображений
Локализация текстовых сообщений
Перечень допустимых локалей
Расширение gettext
Управление ресурсами локализации
Установка локали по умолчанию
Чтение и запись символов Unicode

17. Интернет-службы
Отправка почты
Отправка почты в кодировке MIME
Отправка сообщений в новостные группы Usenet
Поиск адресов с помощью LDAP
Поиск в DNS
Получение и размещение файлов с помощью FTP
Получение информации о доменном имени
Применение LDAP для аутентификации пользователей
Проверка функционирования хоста
Чтение новостей из Usenet
Чтение почты с помощью IMAP или POP3

18. Файлы
Блокировка файла
Выбор случайной строки из файла
Запись в несколько файловых дескрипторов одновременно
Запись в стандартный поток вывода
Непосредственная модификация файла без временной копии
Обработка каждого слова в файле
Обработка текстовых полей переменной длины
Обработка файла по строкам или абзацам в обратном направлении
Открытие удаленного файла
Передача входной информации в программу
Подсчет строк, абзацев или записей в файле
Преобразование метасимволов среды в escape-последовательности
Программа: Unzip
Рандомизация всех строк в файле
Сброс вывода в файл
Создание временного файла
Создание или открытие локального файла
Удаление из файла последней строки
Чтение и запись сжатых файлов
Чтение из стандартного потока ввода
Чтение из стандартного потока вывода программы
Чтение из стандартного потока ошибок программы
Чтение или запись в определенное место в файле
Чтение определенной строки в файле
Чтение файла в строку
Чтение файлов конфигурации

19. Каталоги
Изменение прав доступа к файлу или его владельца
Копирование и перемещение файла
Обработка всех файлов в каталоге
Обработка всех файлов в каталоге
Получение и установка меток даты/времени файла
Получение информации о файле
Получение списка имен файлов, соответствующих шаблону
Программа: Перечень каталогов веб-сервера
Программа: Поиск сайта
Разделение имени файла на составляющие
Создание новых каталогов
Удаление каталога и его содержимого
Удаление файла

20. PHP на стороне клиента
Анализ аргументов программы
Анализ аргументов программы с помощью getopt
Показ в окне графических элементов управления
Показ в окне нескольких графических элементов управления
Показ меню
Программа: Командная оболочка
Программа: Служба погоды
Реакция на действия пользователя
Чтение ввода с клавиатуры
Чтение паролей

21. PEAR
Документирование классов с помощью PHPDoc
Нахождение пакетов PEAR
Обновление пакетов PEAR
Поиск информации о пакете
Работа с менеджером пакетов PEAR
Удаление пакетов PEAR
Установка пакетов PEAR
Установка пакетов PECL