Сделай Сам Свою Работу на 5

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





1) Изучить темы 3.8-3.10 лекционного материала.

2) Выполнить задание по лабораторной работе.

3) Представить для проверки результат выполнения работы в виде одного или нескольких файлов с исходным кодом на языке программирования PHP.

Стандартное задание

Вариант-1: написать функцию, определяющую точный возраст человека (с точностью до одного дня) по его дате рождения. Дату рождения получать через веб-форму.

Вариант-2: написать функцию, формирующую полный список файлов в указанном каталоге (включая подкаталоги) и считающую общий объём файлов. Имя каталога, в котором следует выполнять поиск, получать через веб-форму.

Вариант-3: написать функцию, формирующую календарь на год. Календарь представить в виде HTML-таблицы. Год, за который следует формировать календарь, получать через веб-форму.

Вариант-4: написать функцию, получающую имя файла и приводящую его в соответствие со следующими правилами: допустимы только английские буквы в нижнем регистре, цифры, знаки подчёркивания и не более одной точки; русские буквы транслитерировать в английские; остальные недопустимые символы заменить на знаки подчёркивания; если такой файл существует в указанном каталоге, добавлять в конец имени (перед расширением) постфикс "_1", "_2" и т.п. до получения уникального имени файла. Имя файла и каталога получать через веб-форму.



Вариант-5: написать функцию, формирующую список файлов в указанном каталоге (включая подкаталоги), время создания которых лежит в указанном диапазоне, а имя содержит указанное сочетание символов. Данные для поиска получать через веб-форму.

Вариант-6: написать функцию, выполняющую поиск указанного значения в произвольном массиве. Результат поиска представлять в виде массива, элементами которого являются массивы, содержащие путь к найденным вхождениям элемента в исходном массиве.

Вариант-7: написать функцию, определяющую процентное отношение объёма графических файлов в произвольном каталоге (включая подкаталоги) к общему объёму данных в этом каталоге. Имя каталога получать через веб-форму.

Вариант-8: написать функцию, формирующую полный список файлов и подкаталогов в указанном каталоге. Для всех элементов списка выводить размер в килобайтах (для подкаталогов считать размер их содержимого), дату и время создания, модификации и последнего обращения. Для всех текстовых файлов отобразить первые 100 символов. Имя анализируемого каталога получать через веб-форму.



Вариант-9: написать функцию, формирующую календарь учебного года с указанием номера учебной недели. Первой неделей учебного года считается неделя, на которую приходится 1-е сентября. Номера учебных недель – от 1-го до 4-х. Год, для которого следует формировать календарь учебных недель, получать через веб-форму.

Вариант-10: написать функцию, преобразующую число в словесную форму записи (например, 127 преобразуется в "сто двадцать семь"). Число (до 20 разрядов) получать через веб-форму.

 

Расширенное задание

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

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

Рекомендации по выполнению заданий

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



Так, например, должны быть проверки на корректность и соответствие здравому смыслу введённых дат, на существование и тип объектов файловой системы, с которыми пользователь собирается выполнять операции и т.п.

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

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


Лабораторная работа № 4: регулярные выражения в PHP

 

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

 

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

1) Изучить тему 3.11 лекционного материала.

2) Выполнить задание по лабораторной работе (во всех вариантах использование регулярных выражений является ОБЯЗАТЕЛЬНЫМ!)

3) Представить для проверки результат выполнения работы в виде одного или нескольких файлов с исходным кодом на языке программирования PHP.

Стандартное задание

Вариант-1: в произвольном тексте все целые числа вывести синим цветом, все дроби вывести красным цветом и округлить до десятых.

Вариант-2: в произвольном тексте все аббревиатуры вывести красным цветом, все слова, начинающиеся с большой буквы, вывести зелёным цветом, все числа подчеркнуть.

Вариант-3: в произвольном тексте все e-mail адреса вывести красным цветом и привести к виду <a href="mailto:EMAIL">EMAIL</a>.

Вариант-4: в произвольном тексте все URL'ы вывести красным цветом и привести к виду <a href="URL">URL</a>. Если до преобразования присутствовала человекочитаемая часть URL'а, выводить URL в виде <a href="URL">URL; человекочитаемая_часть</a>.

Вариант-5: в произвольном тексте все номера телефонов (предусмотреть не менее пяти вариантов записи номера) вывести зелёным цветом. При этом номера сотовых телефонов (начинаются с "+КОД-") подчеркнуть.

Вариант-6: в произвольном тексте все даты (в формате DD.MM.YYYY и MM/DD/YYYY, причём день и месяц могут быть однозначными, а год – двузначным) вывести красным цветом, при этом увеличить год на единицу.

Вариант-7: в произвольном тексте все слова, состоящие из английских букв вывести синим цветом, все слова, состоящие из русских букв, вывести красным цветом, все числа вывести зелёным цветом.

Вариант-8: в произвольном тексте последовательности из двух и более пробельных символов заменить на один пробел, каждое предложение оформить в виде отдельного абзаца, все аббревиатуры подчеркнуть, все числа вывести синим цветом.

Вариант-9: в произвольном тексте все слова, начинающиеся с большой буквы, но не стоящие в начале предложения, вывести красным цветом, а все такие слова, стоящие в начале предложения подчеркнуть.

Вариант-10: в произвольном HTML-документе все подчёркнутые фрагменты текста вывести синим, все наклонные фрагменты текста вывести зелёным, все жирные фрагменты текста вывести красным.

Расширенное задание

Написать шаблонизатор (программу, управляющую сборкой готовых HTML-страниц из отдельных шаблонов). Шаблонизатор должен уметь обрабатывать следующие инструкции:

{FILE="path_to_file"} – чтение и подстановка указанного файла;

{CONFIG="value"} – чтение и подстановка значения из конфигурационного файла;

{VAR="variable_name"} – подстановка значения из массива $VARS, формируемого в процессе работы приложения;

{DB="value"} – подстановка значения из предопределённой таблицы в БД, хранящей текстовые надписи, настройки приложения и т.п. информацию;

{IF "var_1"</>/==/!=/<=/>="var2"} PART1 {ELSE} PART2 {ENDIF} – анализ условия и удаление из шаблона той части, которая не соответствует условию; условия могут быть вложенными; часть {ELSE} может отсутствовать.

 

 








Не нашли, что искали? Воспользуйтесь поиском по сайту:



©2015 - 2024 stydopedia.ru Все материалы защищены законодательством РФ.