PHP. Полное руководство + справочник функций

PHP. Полное руководство + справочник функций

PHP. Полное руководство + справочник функций
Автор: Лукьянов Михаил Ю.
Дата выхода: 2020
Издательство: Издательство "Наука и Техника"
Количество страниц: 434
Размер файла: 24,4 МБ
Тип файла: PDF
Добавил: codelibs
 Проверить на вирусы

ГЛАВА 1. ВВЕДЕНИЕ В PHP ......................... 11  
1.1. ЧТО ДЕЛАЕТ PHP? ..................................................................... 11  
1.3. УСТАНОВКА PHP ....................................................................... 12  
1.4. ОБЗОР PHP ............................................................................. 13  
Конфигурация системы .............................................................. 14  
Формы ....................................................................................... 15  
Базы данных ............................................................................... 16  
Графика ...................................................................................... 18  

ГЛАВА 2. ОСНОВЫ ЯЗЫКА .......................... 21  
2.1. ЛЕКСИЧЕСКАЯ СТРУКТУРА ........................................................ 21  
2.1.1. Чувствительность к регистру ............................................ 21  
2.1.2. Операторы и точки с запятыми ......................................... 21  
2.1.3. Пробелы и разрывы строк ................................................. 22  
2.1.4. Комментарии .................................................................... 23  
2.1.5. Литералы .......................................................................... 26  
2.1.6. Идентификаторы .............................................................. 27  
Имена переменных ............................................................... 27  
Имена функций ..................................................................... 27  
Имена классов ...................................................................... 28  
Константы ............................................................................. 28  
2.2. КЛЮЧЕВЫЕ СЛОВА .................................................................. 28  
2.3. ПЕРЕМЕННЫЕ ......................................................................... 38  
2.3.1. Переменные переменных ................................................. 39  
2.3.2. Переменные-ссылки ......................................................... 39  
2.3.3. Области видимости переменных ...................................... 40  
2.3.4. Сбор мусора (Garbage Collection) ..................................... 43  
2.4. ВЫРАЖЕНИЯ И ОПЕРАТОРЫ ...................................................... 44  
2.4.1. Количество операндов ...................................................... 46  
2.4.2. Приоритет операторов ..................................................... 46  
2.4.3. Порядок выполнения операторов .......................................... 47  
2.4.4. Неявное приведение типа .................................................... 48  
2.4.5. Арифметические операторы ................................................ 49  
2.4.6. Оператор конкатенации строки ............................................ 50  
2.4.7. Операторы инкремента и декремента .................................. 50  
2.4.8. Операторы сравнения ......................................................... 52  
2.4.9. Поразрядные (побитовые) операторы .................................. 54  
2.4.10. Логические операторы ....................................................... 56  
2.4.11. Операторы приведения типов ............................................ 57  
2.4.12. Оператор присваивания ..................................................... 58  
2.4.13. Разные операторы: подавление ошибок и другие ............... 60  

2.5. ОПЕРАТОРЫ УПРАВЛЕНИЯ ВЫПОЛНЕНИЕМ ............................... 61  
2.5.1. Оператор if ........................................................................... 61  
2.5.2. Оператор switch .................................................................... 63  
2.5.3. Оператор while ..................................................................... 65  
2.5.4. Цикл for. Цикл со счетчиком ................................................ 68  
2.5.5. Оператор foreach .................................................................. 69  
2.5.6. Конструкция try ... catch ....................................................... 70  
2.5.7. Оператор declare ................................................................... 70  
2.5.8. Операторы exit и return ....................................................... 71  
2.5.9. Оператор goto ...................................................................... 72  

2.6. ВКЛЮЧЕНИЕ КОДА ........................................................................... 72  
2.7. ВНЕДРЕНИЕ PHP В WEB-СТРАНИЦЫ ........................................... 74  

ГЛАВА 3. ФУНКЦИИ .......................................................................... 79  
3.1. ВЫЗОВ ФУНКЦИИ ........................................................................ 79  
3.2. ОПРЕДЕЛЕНИЕ ФУНКЦИИ ......................................................... 80  
3.3. ОБЛАСТЬ ДЕЙСТВИЯ ПЕРЕМЕННОЙ ........................................... 83  
3.4. ПАРАМЕТРЫ ФУНКЦИИ ............................................................. 85  
3.5. ВОЗВРАЩАЕМЫЕ ЗНАЧЕНИЯ ..................................................... 90  
3.6. ПЕРЕМЕННЫЕ ФУНКЦИИ. ОБРАЩЕНИЕ К ФУНКЦИЯМ ЧЕРЕЗ ПЕРЕМЕННЫЕ ............................................. 91  
3.7. АНОНИМНЫЕ ФУНКЦИИ ............................................................ 92  

ГЛАВА 4. СТРОКИ ............................................................... 94  
4.1. СПОСОБЫ ЗАПИСИ СТРОКОВЫХ КОНСТАНТ ................................. 94  
4.2. ВЫВОД СТРОК ........................................................................ 98  
4.2.1. Конструкция echo ............................................................. 98  
4.2.2. Функция print() .................................................................. 99  
4.2.3. Функция printf() ................................................................. 99  
4.2.4. Функции print_r() и var_dump() ........................................ 102  
4.3. ПОЛУЧЕНИЕ ДОСТУПА К ОТДЕЛЬНЫМ СИМВОЛАМ ...................... 103  
4.4. ОЧИСТКА СТРОК .................................................................... 104  
4.5. КОДИРОВАНИЕ И ЭКРАНИРОВАНИЕ .......................................... 106  
4.5.1. В формат HTML ............................................................... 106  
Экранирование всех специальных символов ............................ 106  
Экранирование только символов синтаксиса HTML ................. 107  
Удаление HTML-тегов ............................................................... 108  
Извлечение META-тегов ............................................................ 109  
4.5.2. Конвертирование в URL .................................................. 109  
Кодирование и декодирование по RFC 3986 ............................ 109  
Кодирование строки параметров ............................................. 110  
4.5.3. В формат SQL ................................................................. 110  
4.5.4. Кодирование C-строк ..................................................... 111  
4.6. СРАВНЕНИЕ СТРОК .................................................................. 112  
4.7. МАНИПУЛЯЦИЯ И ПОИСК СТРОК .............................................. 115  
4.7.1. Подстроки ........................................................................... 116  
4.7.2. Разные строковые функции ............................................. 117  
4.7.3. Декомпозиция строки. Разбиение строки .......................... 118  
4.7.4. Функции поиска строк ..................................................... 120  
4.8. РЕГУЛЯРНЫЕ ВЫРАЖЕНИЯ ....................................................... 123  
4.8.1. Основные положения использования регулярных выражений ............................................................................... 123  
4.8.2. Классы символов ............................................................... 124  
4.8.3. Альтернативы .................................................................. 125  
4.8.4. Повторяющиеся последовательности ................................. 126  
4.8.5. Подшаблоны ................................................................... 127  
4.8.6. Разделители .................................................................... 127  
4.8.7. Поведение соответствия .................................................... 128  
4.8.8. Классы символов ................................................................. 128  
4.8.9. Якоря ................................................................................ 129  
4.8.10. Квантификаторы и жадность .......................................... 130  
4.8.11. Нефиксируемые группы .................................................. 131  
4.8.12. Обратные ссылки ............................................................ 131  
4.8.13. Флаги ............................................................................... 132  
4.8.14. Встроенные опции .......................................................... 133  
4.8.15. Опережающие и ретроспективные утверждения ............. 134  
4.8.16. Сокращения или однократные подмаски .......................... 135  
4.8.17. Условные выражения ...................................................... 136  
4.8.18. Функции ......................................................................... 136  
4.8.19. Отличия от регулярных выражений Perl ............................ 143  

ГЛАВА 5. МАССИВЫ ................................................................ 145  
5.1. ИНДЕКСИРОВАННЫЕ И АССОЦИАТИВНЫЕ МАССИВЫ ..................... 145  
5.2. ИДЕНТИФИКАЦИЯ ЭЛЕМЕНТОВ МАССИВА ................................... 146  
5.3. ХРАНЕНИЕ ДАННЫХ В МАССИВАХ ............................................ 147  
Добавление значений в конец массива ........................................ 148  
Присваивание диапазона значений .............................................. 148  
Получение размера массива ......................................................... 149  
Заполнение массива .................................................................... 149  
5.4. МНОГОМЕРНЫЕ МАССИВЫ ....................................................... 150  
5.5. ИЗВЛЕЧЕНИЕ НЕСКОЛЬКИХ ЗНАЧЕНИЙ ....................................... 150  
«Вырезка» из массива .................................................................. 151  
Разделение массива на несколько массивов ............................... 152  
Ключи и значения ......................................................................... 152  
Проверка существования элемента массива .................................. 153  
Удаление и вставка элементов в массив ...................................... 154  
5.6. ПРЕОБРАЗОВАНИЕ МЕЖДУ МАССИВАМИ И ПЕРЕМЕННЫМИ ............ 155  
Создание переменных из массива ................................................. 155  
Создание массива из переменных ................................................. 156  
5.7. ОБХОД МАССИВОВ ................................................................ 156  
Конструкция foreach .................................................................. 157  
Функции-итераторы .................................................................... 157  
Использование цикла for .............................................................. 159  
Вызов функции для каждого элемента массива .......................... 159  
Сокращение массива .................................................................... 161  
Поиск значений ............................................................................ 162  

5.8. СОРТИРОВКА ........................................................................... 163  
Сортировка одного массива за один раз ..................................... 163  
Натуральный порядок сортировки ................................................ 166  
Сортировка нескольких массивов за один раз .............................. 167  
Инвертирование массивов ............................................................. 167  
Сортировка в случайном порядке .................................................. 168  

5.9. РАБОТА СО ВСЕМ МАССИВОМ .................................................. 169  
Вычисление суммы всех элементов массива ................................. 169  
Вычисление разницы между двумя массивами ............................... 170  
Фильтрация элементов массива .................................................... 170  

5.10. ИСПОЛЬЗОВАНИЕ МАССИВОВ .................................................. 171  
Множества ................................................................................... 171  
Стеки ............................................................................................. 172  

5.11. ИНТЕРФЕЙС ITERATOR .............................................................. 173  

ГЛАВА 6. ОБЪЕКТЫ ......................................................................... 176  
6.1. ТЕРМИНОЛОГИЯ И ОСНОВНЫЕ ПОНЯТИЯ .................................... 177  
6.2. СОЗДАНИЕ ОБЪЕКТА .................................................................. 178  
6.3. ДОСТУП К СВОЙСТВАМ И МЕТОДАМ .......................................... 179  
6.4. ОБЪЯВЛЕНИЕ КЛАССА ............................................................... 180  
Определение методов ................................................................... 181  
Объявление свойств ...................................................................... 184  
Перегрузка .................................................................................... 185  
Объявление констант .................................................................... 186  
Наследование ................................................................................ 186  
Интерфейсы .................................................................................. 187  
Абстрактные методы ................................................................ 192  
Конструкторы ........................................................................... 193  
Деструкторы ............................................................................ 194  

6.5. ИНТРОСПЕКЦИЯ .................................................................... 195  
Исследование классов ................................................................. 195  
Исследование объекта ................................................................ 197  
Пример интроспекции ............................................................... 198  

6.6. СЕРИАЛИЗАЦИЯ ................................................................... 201  

ГЛАВА 7. WEB-ТЕХНОЛОГИИ .................................................... 206  
7.1. ОСНОВЫ НПР ......................................................................... 206  
7.2. ПЕРЕМЕННЫЕ ....................................................................... 207  
7.3. ИНФОРМАЦИЯ СЕРВЕРА ......................................................... 208  

7.4. ОБРАБОТКА ФОРМ ................................................................. 210  
Методы ..................................................................................... 210  
Параметры ................................................................................ 211  
Самообработка страниц ............................................................ 213  
Липкие формы ............................................................................ 215  
Многозначные параметры .......................................................... 216  
Липкие многозначные параметры .............................................. 218  
Загрузка файлов ........................................................................ 220  
Проверка формы ....................................................................... 221  

7.5. УСТАНОВКА ЗАГОЛОВКОВ ОТВЕТА ............................................ 224  
Разные типы контента .............................................................. 224  
Перенаправления ....................................................................... 225  
Срок истечения .......................................................................... 225  
Аутентификация ......................................................................... 226  

7.6. ПОДДЕРЖАНИЕ СОСТОЯНИЯ ................................................... 227  
7.6.1. Использование Cookies ................................................... 228  
7.6.2. Сессии .............................................................................. 232  
Основы сессий ............................................................................ 232  
Альтернативы Cookies ................................................................. 234  
Пользовательское хранилище ................................................... 235  
Комбинирование Cookies и сессий .......................................... 235  
SSL .......................................................................................... 236  

ГЛАВА 8. БАЗЫ ДАННЫХ ....................................................... 238  
8.1. РЕЛЯЦИОННЫЕ БАЗЫ ДАННЫХ И SQL ....................................... 239  
8.1.1. Введение в реляционные базы данных и SQL ..................... 239  
8.1.2. Объекты данных РНР ...................................................... 241  
Создание соединения ............................................................. 242  
Взаимодействие с базой данных ................................................ 242  
Подготовленные запросы .......................................................... 242  
Транзакции ............................................................................... 244  

8.2. ОБЪЕКТНО-ОРИЕНТИРОВАННЫЙ ИНТЕРФЕЙС MYSQLI ................... 244  
8.3. SQLITE ................................................................................... 247  
8.4. РАБОТА С ДАННЫМИ ЧЕРЕЗ ПРЯМОЕ  
МАНИПУЛИРОВАНИЕ ФАЙЛАМИ .............................................. 250  

ГЛАВА 9. ГРАФИКА .................................................................... 260  
9.1. ВСТРАИВАНИЕ ИЗОБРАЖЕНИЯ В СТРАНИЦУ ................................ 260  
9.2. ОСНОВНЫЕ КОНЦЕПЦИИ ГРАФИКИ ............................................. 261  
9.3. СОЗДАНИЕ И РИСОВАНИЕ ИЗОБРАЖЕНИЙ .................................. 262  
9.4. ИЗОБРАЖЕНИЯ С ТЕКСТОМ ...................................................... 268  
9.5. ДИНАМИЧЕСКИЕ СГЕНЕРИРОВАННЫЕ КНОПКИ ............................ 272  
9.6. ИЗМЕНЕНИЕ РАЗМЕРА ИЗОБРАЖЕНИЙ ....................................... 276  
9.7. ОБРАБОТКА ЦВЕТА .................................................................. 277  

ГЛАВА 10. PDF ............................................................................. 283  
10.1. PDF-РАСШИРЕНИЯ .................................................................. 283  
10.2. ДОКУМЕНТЫ И СТРАНИЦЫ ..................................................... 283  
ГЛАВА 11. XML .......................................................................... 286  
11.1. Краткое руководство по XML ............................................ 286  
11.2. Создание XML-документов ................................................ 288  

ГЛАВА 12. БЕЗОПАСНОСТЬ ....................................................... 291  
12.1. Фильтруем ввод .................................................................. 291  
12.2. Межсайтовый скриптинг .................................................... 294  
12.3. Экранирование вывода ....................................................... 297  
12.3.1. Экранирование как инструмент соответствия контексту .. 297  
12.3.2. Имена файлов ............................................................... 302  
Основные проблемы безопасности, связанные с именами файлов ... 302  
Проверка относительных путей ................................................... 303  
12.4. Фиксация сессии ................................................................ 304  
12.5. Безопасная загрузка файлов ................................................ 304  
Не доверяйте предоставленным браузером именам файлов ........ 305  
Остерегайтесь заполнения вашей файловой системы .................. 305  
Осторожно! register_globals ..................................................... 305  
12.6. Доступ к файлам ................................................................. 306  
Ограничиваем доступ к файловой системе ................................... 306  
Используйте umask() .................................................................. 307  
Вообще не используйте файлы .................................................... 308  
Файлы сессии ............................................................................. 308  
Прячем библиотеки PHP .............................................................. 309  
12.7. Запуск пользователем PHP-кода ......................................... 310  
12.8. Команды оболочки ............................................................. 311  
12.9. Резюме .................................................................................. 312  

ПРИЛОЖЕНИЕ.  
СПРАВОЧНИК ПО ФУНКЦИЯМ .................................................. 313  

Если вы интересуетесь веб-программированием и разработкой динамических веб-сайтов - эта книга для Вас!

Наша книга поможет вам освоить язык PHP практически с нуля-от самых самых основ до создания своих собственных приложений и библиотек кода.

  • Пошаговые примеры помогут вам разобраться с многочисленными функциями PHP;
  • вы узнаете, как правильно использовать строки;
  • что такое массивы и какие действия с ними можно выполнять;
  • вы узнаете, как используется ООП (объектно-ориентированное программирование) в РНР;
  • научитесь использовать PHP-сеансы и получать доступ к параметрам формы и загруженным файлам;
  • узнаете, как отправить Cookies и перенаправить браузер или как получить доступ к базам данных из PHP;
  • поработаете с графикой в PHP и научитесь динамически генерировать изображения с помощью PHP;
  • узнаете, как сделать свои веб-приложения безопасными и защитить их от наиболее распространенных и опасных атак и многое-многое другое.

Большая часть книги посвящена подробному Справочнику функций PHP - для каждой функции в этом справочнике будет указано: ее имя, принимаемые параметры с типами данных, будет сказано, какой из параметров обязательный, а какой - нет, также будут приведены краткое описание функции, побочные эффекты, ошибки и возвращаемые функцией структуры данных. Для удобства справочник составлен в алфавитном порядке.

Книга будет полезна программистам любого уровня - от самых начинающих до продвинутых пользователей, каждый найдет здесь для себя много полезного.


Похожее:

Список отзывов:

Нет отзывов к книге.