Иркутск

Лучников В.А. Программирование на языке PHP. Учебное пособие – Иркутск: ИрГУПС, 2012. -129 с.

 

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

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

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

 

Содержание

 

 

Внедрение PHP-сценария в HTML-документ. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .6

Алфавит языка. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .7

Служебные слова. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .8

Типы данных . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9

Комментарии . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12

Переменные. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. . . . . . .12

Математические функции. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .14

Математические константы. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16

Выражения . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .17

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

проверка существования переменной. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .20

Вывод данных . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. . . . 22

бесформатный вывод . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22

форматированный вывод. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22

отладочная печать . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24

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

Массивы . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27

создание массивов. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27

многомерные массивы . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29

операции над массивами. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31

перемещение по массиву. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31

копирование массивов. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .31

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

запись значений элементов массива в переменные из списка . . . . . . .34

преобразование массива в текстовую строку . . . . . . . . . . . . . . . . . . . . .35

преобразование текстовой строки в массив. . . . . . . . . . . . . . . . . . . . . . 35

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

Глобальные предопределенные массивы . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42

Дата и время. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45

Функции . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. . . . . . . 49

рекурсия. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .52

функция dumper(). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .52

функции для работы со строками.. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. . . . . .54

регулярные выражения . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56

автономные функции . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 62

Файлы . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 63

текстовые файлы . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .64

включение файлов . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .71

получение информации о файле . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 73

блокировка файлов . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 73

бинарные файлы . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 74

Алгоритм и его свойства . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. . . . . .. . . . .78

схемы алгоритмов . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .78

Базовые структуры . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. . . . . . . . . .82

Цепочка . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. . . . 83

Ветвления . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. . . 84

альтернатива . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .84

переключатель . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 96

Циклы . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 102

бесконечные циклы. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 102

циклы с предусловием.. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .103

циклы с постусловием. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .111

циклы с параметром . . .. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 122

 

 

Трудно переоценить взрывной рост ресурсов в сети WWW. Все большее количество сайтов предоставляют своим пользователям те или иные онлайновые сервисы. Такое быстрое развитие во многом определяется простотой языка HTML, при помощи которого создавались веб-страницы. Но веб-страницы помимо преимуществ имеют и существенные недостатки. По сути своей веб-страницы – это обычные текстовые файлы, содержимое которых является HTML-кодом. Эти файлы передаются на компьютер пользователя, где браузер обрабатывает их и отображает на экране. Веб-страницы статичны. Они изначально являются лишь набором текста и графики и не несут никакой функциональности. Такая ситуация не могла устроить ни пользователей, ни разработчиков.

Вскоре появились языки программирования, которые в той или иной мере исправляли эти недостатки.

Языки веб-программирования делятся на два типа. Разница между ними заключается в том, что одна технология позволяет вставлять в веб-страницы код, который будет выполняться на стороне пользователя (клиента), а вторая технология предполагает, что код будет выполняться веб-сервером. К языкам первого типа можно отнести JavaScript и VBScript. Код, написанный на этих языках, просто добавляется к веб-странице и исполняется браузером пользователя после ее загрузки. Это позволяет несколько оживить статику HTML-документа и даже проверить заполняемость элементов формы перед отправкой их для обработки на сервер. Но эти языки не позволяют работать с файлами и базами данных, которые размещены на веб-сервере. Код, добавленный к веб-странице, выполняется на стороне пользователя, что налагает серьезные ограничения на его функциональность.

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

Порядок выполнения программ на PHP достаточно прост. Все начинается с того, что браузер пользователя посылает запрос серверу на получение веб-страницы. Если в ее состав входит код PHP, то сервер должен выполнить некоторые действия перед ее отправкой пользователю. Прежде всего, он передает запрошенный документ системе выполнения языка PHPдвижку (engine). Эта система обрабатывает полученный код, выполняет заложенную в нем функциональность и формирует конечный документ на чистом языке HTML. Этот документ возвращается серверу, который затем передает его пользователю, пославшему запрос.

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

Все началось в 1995 году, когда Расмус Лердорф создал небольшую систему, которую назвал PHP/FI (Personal Home Page/Form Interpretor). Тогда это был небольшой набор сценариев на языке Perl, который облегчал ему работу над его собственным небольшим сайтом. Эта система распознавала свои теги, внедренные напрямую в код HTML-документов. В современной системе до сих пор используются эти возможности.

Вскоре после выпуска второй версии PHP/FI появилась альфа-версия PHP3: ЗивЗураски и Энди Гутманс внесли много серьезных изменений в ядро PHP/FI. Эта версия имела возможность подключения сторонних модулей, чем не замедлили воспользоваться разработчики. Возможности PHP продолжали расширяться. Подобную мощную систему уже не стоило называть Personal Homrpage Procerssor. Сейчас система называется Hypertext Preprocessor.

Следующая версия, PHP4, созданная этими авторами в 2000 году, базировалась на движкеZend, который стал сердцем всей системы. В настоящее время используется версия PHP5, о которой идет речь в этом учебнике

 








Дата добавления: 2015-08-26; просмотров: 463;


Поиск по сайту:

При помощи поиска вы сможете найти нужную вам информацию.

Поделитесь с друзьями:

Если вам перенёс пользу информационный материал, или помог в учебе – поделитесь этим сайтом с друзьями и знакомыми.
helpiks.org - Хелпикс.Орг - 2014-2024 год. Материал сайта представляется для ознакомительного и учебного использования. | Поддержка
Генерация страницы за: 0.012 сек.