Как написать и продать свой PHP скрипт

Как написать и продать свой PHP скрипт

Как написать и продать свой PHP скрипт
Автор: Акопян Самуэль
Дата выхода: 2018
Издательство: Самиздат
Количество страниц: 86
Размер файла: 12.0 MB
Тип файла: PDF
Добавил: codelibs
 Проверить на вирусы

Предисловие....12

Объектно-ориентированный подход....12

PostgreSQL и Redis....12

Задания....13

Исходные коды....13

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

Глава 1. Что представляет собой РНР?....16

1.1. Достоинства и недостатки....16

1.2. Структура РНР....18

1.3. Сопутствующие технологии....18

Задание....19

Глава 2. Установка РНР....20

2.1. Установка в Windows....20

2.2. Установка в Mac OS X....22

2.3. Установка в Linux (Ubuntu)....23

2.4. Встроенный сервер....23

2.5. Файл hosts....24

2.6. Вещание вовне....25

2.7. Настройка РНР....25

2.8. Расширения....27

2.9. Документация....28

Задания....28

Глава 3. Быстрый старт....30

3.1. Скрипты....30

3.2. Начальные и конечные теги....32

3.3. Использование точки с запятой....33

3.4. Составные выражения. Фигурные скобки....34

3.5. Комментарии....35

3.6. Включение РНР-файла....37

Задания....38

Глава 4. Переменные и типы данных....40

4.1. Объявление переменной. Оператор =....40

4.2. Типы данных....41

4.3. Целые числа....42

4.4. Вещественные числа....43

4.5. Логический тип....44

4.6. Строки....45

4.7. Кавычки....45

4.8. Оператор <<<....48

4.9. Обращение к неинициализированной переменной. Замечания (Notice)....49

4.10. Специальный тип null....49

4.11. Уничтожение переменной. Конструкция unsetQ....50

4.12. Проверка существования переменной. Конструкции issetQ и emptyQ....51

4.13. Определение типа переменной....53

4.14. Неявное приведение типов....55

4.15. Явное приведение типов....56

4.16. Динамические переменные....59

Задания....60

Глава 5. Классы и объекты....62

5.1. Собственные типы данных....62

5.2. Создание класса....63

5.3. Разделение классов и остального кода....64

5.4. Создание объекта....66

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

5.6. Спецификаторы доступа....68

5.7. Статические переменные класса....69

5.8. Ссылки на переменные....70

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

Задания....72

Глава 6. Константы....74

6.1. Объявление константы. Функция defineQ....74

6.2. Проверка существования константы....76

6.3. Динамическое имя константы....77

6.4. Предопределенные константы....78

6.5. Абсолютный и относительный пути к файлу....79

6.6. Константа класса....80

Задания....81

Глава 7. Операторы....82

7.1. Объединение строк. Оператор "точка"....82

7.2. Конструкция echo. Оператор "запятая"....83

7.3. Арифметические операторы....84

7.4. Поразрядные операторы....88

7.5. Операторы сравнения....93

7.6. Приоритет выполнения операторов....96

Задания....97

Глава 8. Условия....98

8.1. Условный оператор if....98

8.2. Логические операторы....100

8.3. Условный оператор* ?у : z....105

8.4. Оператор ??....106

8.5. Переключатель switch....106

8.6. Оператор goto....110

Задания....111

Глава 9. Циклы....112

9.1. Цикл while....112

9.2. Цикл do while....117

9.3. Цикл for....118

Задания....122

Глава 10. Массивы....124

10.1. Создание массива....124

10.2. Ассоциативные и индексные массивы....128

10.3. Многомерные массивы....129

10.4. Интерполяция элементов массива в строки....131

10.5. Конструкция listQ....132

10.6. Обход массива....133

10.7. Цикл foreach....133

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

10.9. Сравнение массивов....137

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

10.11. Удаление элементов массива....142

Задания....143

Глава 11. Функции....144

11.1. Объявление и вызов функции....144

11.2. Параметры и аргументы функции....147

11.3. Типы параметров и возвращаемого значения....148

11.4. Передача параметров по значению и ссылке....148

11.5. Необязательные параметры....149

11.6. Переменное количество параметров....150

11.7. Глобальные переменные....151

11.8. Статические переменные....152

11.9. Возврат массива функцией....153

11.10. Рекурсивные функции....153

11.11. Вложенные функции....155

11.12. Динамическое имя функции....155

11.13. Анонимные функции....156

11.14. Замыкания....158

Задания....159

Глава 12. Строковые функции....160

12.1. Строки как массивы....160

12.2. UTF-8. Расширение mbstring....161

12.3. Функции для работы с символами....163

12.4. Поиск в строке....164

12.5. Замена в тексте....165

12.6. Работа с HTML-кодом....167

12.7. Форматный вывод....171

12.8. Объединение и разбиение строк....174

12.9. Сериализация объектов и массивов....176

12.10. JSON-формат....176

Задания....180

Глава 13. Взаимодействие РНР с HTML....182

13.1. Передача параметров методом GET....182

13.2. HTML-форма и ее обработчик....185

13.3. Текстовое поле....189

13.4. Поле для приема пароля....190

13.5. Текстовая область....191

13.6. Скрытое поле....192

13.7. Флажок....194

13.8. Список....196

13.9. Переключатель....198

13.10. Загрузка файла на сервер....199

13.11. Переадресация....202

Задания....205

Глава 14. Суперглобальные массивы....206

14.1. Типы суперглобальных массивов....206

14.2. Cookie....207

14.3. Сессии....209

14.4. Переменные окружения....211

14.5. Массив $_SERVER....213

14.5.1. Элемент $_SERVER['DOCUMENT_ROOT]....213

14.5.2. Элемент $_SERVER[,HTTP_ACCEPT]....213

14.5.3. Элемент $_SERVER[fHTTP_ACCEPT_LANGUAGE]....214

14.5.4. Элемент $_SERVER[fHTTP_HOST]....215

14.5.5. Элемент $ SERVER?HTTP_REFERER]....215

14.5.6. Элемент $_SERVER['HTTP USER AGENT]....215

14.5.7. Элемент $_SERVER['REMOTE_ADDR']....215

14.5.8. Элемент $_SERVER['SCR1PT FILENAME’]....216

14.5.9. Элемент $_SERVER['SERVER NAME]....216

14.5.10. Элемент $_SERVER['REQUEST METHOD]....217

14.5.11. Элемент $_SERVER['QUERY STRING]....217

14.5.12. Элемент $_SERVER[PHP_SELF]....218

14.5.13. Элемент $_SERVERl'REQUEST URI]....218

Задания....218

Глава 15. Фильтрация и проверка данных....220

15.1. Фильтрация или проверка?....220

15.2. Фильтры проверки....222

15.3. Фильтры очистки....225

15.4. Пользовательская фильтрация данных....228

15.5. Фильтрация внешних данных....229

Задания....231

Глава 16. Методы....232

16.1. Определение метода....232

16.2. Обращение к переменным объекта....233

16.3. Статические методы....235

16.4. Ключевое слово self....235

Задания....236

Глава 17. Специальные методы....238

17.1. Конструктор_constructO....238

17.2. Параметры конструктора....240

17.3. Деструктор_destructQ....242

17.4. Методы-аксессоры_set0 и_getQ....243

17.5. Динамические методы....245

17.6. Интерполяция объекта....247

Задания....249

Глава 18. Наследование....250

18.1. Наследование....250

18.2. Спецификаторы доступа и наследование....251

18.3. Перегрузка методов....254

18.4. Позднее статическое связывание....256

18.5. Полиморфизм....258

18.6. Абстрактные классы....260

18.7. Абстрактные методы....261

18.8. /г/иа/-методы класса....262

18.9. Final-классы....263

18.10. Анонимные классы....263

18.11. Оператор instanceof....265

Задания....265

Глава 19. Интерфейсы....266

19.1. Ограничения наследования....266

19.2. Создание интерфейса....270

19.3. Наследование интерфейсов....272

19.4. Реализация нескольких интерфейсов....275

19.5. Реализует ли объект интерфейс?....277

Задание....278

Глава 20. Трейты....280

20.1. Создание трейта....280

20.2. Трейты и наследование....283

20.3. Разрешение конфликтов....286

20.4. Вложенные трейты....288

Задание....289

Глава 21. Исключения....290

21.1. Синтаксис исключений....291

21.2. Интерфейс класса Exception....292

21.3. Генерация исключений в классах....294

21.4. Создание собственных исключений....297

21.5. Перехват исключений производных классов....300

21.6. Повторная генерация исключений....301

21.7. Блок finally....303

Задание....304

Глава 22. Ошибки....306

22.1. Ошибки и исключения....306

22.2. Типы уведомлений....308

22.3. Пользовательские ошибки....310

22.4. Подавление ошибок....311

Задания....312

Глава 23. Пространство имен....314

23.1. Создание пространства имен....314

23.2. Иерархия пространств имен....319

23.3. Глобальное пространство имен....320

23.4. Текущее пространство имен....320

23.5. Импортирование....321

Задания....322

Глава 24. Автозагрузка....324

24.1. Функция__autoloadQ....324

24.2. Функция spl autoload registerQ....327

Задание....328

Глава 25. Шаблоны проектирования....330

25.1. Зачем нужны шаблоны проектирования?....331

25.2. Одиночка (Singleton)....332

25.3. Фабричный метод (Factory Method)....333

25.4. Модель-Представление-Контроллер....339

Задания....350

Глава 26. Компоненты....352

26.1. Composer: управление компонентами....352

26.2. Установка Composer....353

26.2.1. Установка в Windows....353

26.2.2. Установка в Mac OS X....355

26.2.3. Установка в Ubimtu....355

26.3. Где искать компоненты?....355

26.4. Установка компонента....356

26.5. Использование компонента....358

Задания....359

Глава 27. База данных PostgreSQL....360

27.1. Почему PostgreSQL?....361

27.2. Установка PostgreSQL....362

27.2.1. Установка в Windows....362

27.2.2. Установка в Mac OS X....364

27.2.3. Установка в Ubuntu....364

27.3. Введение в СУБД и SQL....365

27.4. Первичные ключи....367

27.5. Управление базами данных....369

27.6. Управление таблицами ;....371

27.7. Вставка записей в таблицу....372

27.8. Удаление записей....373

27.9. Обновление записей....374

27.10. Выборка записей....375

Задания....376

Глава 28. РНР-расширение PDO....378

28.1. Настройка расширения PDO....378

28.2. Установка соединения с базой данных....379

28.3. Выполнение SQL-запросов....380

28.4. Обработка ошибок....381

28.5. Извлечение данных....383

28.6. Параметризация SQL-запросов....385

Задания....386

Глава 29. NoSQL база данных Redis....388

29.1. Почему Redis?....389

29.2. Установка сервера....390

29.2.1. Установка в среде Ubuntu....390

29.2.2. Установка в среде Mac OS X....390

29.2.3. Установка в Windows....391

29.2.4. Проверка работоспособности....391

29.3. Клиент redis-cli....392

29.4. Вставка и получение значений....393

29.5. Обновление и удаление значений....394

29.6. Управление ключами....396

29.7. Время жизни ключа....396

29.8. Типы данных....397

29.9. Хэш....398

29.10. Множество....399

29.11. Отсортированное множество....401

29.12. Базы данных....403

29.13. Производительность Redis....403

Задания....404

Глава 30. РНР-расширение Redis....406

30.1. Установка расширения php-redis....406

30.2. Хранение сессий в Redis....407

30.3. Методы для обслуживания данных в Redis....408

30.4. Кэширование данных....410

Задания....415

Глава 31. Итераторы....416

31.1. Интерфейсы для создания итераторов....416

31.2. Интерфейс Array Access....420

31.3. Класс ArrayObject....423

31.4. Класс Directorylterator....424

31.5. Класс Filter Iterator....425

31.6. Класс Limitlterator....426

31.7. Рекурсивные итераторы....427

Задания....427

Глава 32. Генераторы и итераторы....428

32.1. Отложенные вычисления....428

32.2. Манипуляция массивами....431

32.3. Экономия ресурсов....433

32.4. Использование ключей....434

32.5. Связь генераторов с объектами....436

Задания....437

Заключение....438

Предметный указатель....440

Вы написали свой первый PHP скрипт и хотите его продать. Эта книга поможет Вам с пошаговой инструкцией в этом начинании, а также подскажет как избежать распространённых ошибок при создании и продаже своего собственного программного обеспечения.


Похожее:

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

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