Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
На проверку.docx
Скачиваний:
0
Добавлен:
01.07.2025
Размер:
4.39 Mб
Скачать

1.2.3 История создания php.

История возникновения и развития PHP История PHP начинается с 1995 года, когда РасмусЛердорф (RasmusLerdorf) создал простое приложение на языке Perl, анализирующее посещения пользователями его резюме на веб-сайте. Затем, когда этим приложением уже пользовались несколько человек, а число желающих получить его постоянно увеличивалось, Лердорф назвал свое творение PersonalHomePageTools версия 1 и выставил для свободного скачивания. С этого момента начался небывалый взлет популярности PHP. Как это всегда бывает, срочно потребовались доработки и дополнения. Для их реализации Расмус создает новую версию пакета, теперь уже написанную на С. Полученный таким образом инструмент приобретает рабочее название PHP/FI (PersonalHomePage / FormsInterpreter - Персональная Домашняя страница / Интерпретатор Форм), в дальнейшем он также будет известен под названием PHP 2. Эта версия уже в большей степени похожа на сегодняшний PHP. Она имела синтаксис и способ именования переменных в стиле языка Perl, автоматическую интерпретацию форм, интеграцию с базами данных (в основном с mSQL) и возможность встраивания PHP операторов в html-код страницы. При этом все работало очень быстро, так как PHP перекомпилировался к веб-серверу Apache. К 1997 году PHP использовался уже на 50,000 доменах (не более 1% всех веб-серверов).  В том же 1997 году к проекту PHP подключились Зив Сураски (ZeevSuraski) и Энди Гутманс (AndiGutmans). Будучи студентами одного из Израильских университетов, они пытались использовать PHP/FI для одного из коммерческих университетских проектов. При этом им пришлось столкнуться со многими трудностями и ограничениями этой технологии. Изучая исходный код PHP 2, Зив и Энди пришли к выводу о необходимости доработки, а точнее существенной переработки PHP, особенно в плане синтаксиса языка. В течение нескольких месяцев они блестяще справились с этой задачей, тем более приятно, что данная работа была зачтена им в качестве учебной нагрузки университета. Закончив работу Зив и Энди связались с Расмусом, который воспринял все изменения PHP "на ура". С этого момента появляется PHP Group - группа единомышленников, работающих над развитием технологии PHP. Полученный продукт совместной деятельности увидел свет в 1998 году под названием PHP3. При этом главной особенность PHP 3 была возможность расширения ядра, что привлекло к работе над PHP множество сторонних разработчиков, создающих специализированные модули. Их наличие дало PHP возможность работать с огромным количество баз данных, протоколов, поддерживать большое число API. К концу 1998 количество пользователей PHP перевалило за 100000, а PHP был уже установлен на не менее чем 10% серверах Интернета. В печати были опубликованы более 20 статей по теме PHP и вышли 2 книги. Сразу же после выхода PHP 3, Энди Гутманс и Зив Сураски начали переработку ядра PHP. В первую очередь предстояло решить проблему повышения производительности. Новый движок, названный ZendEngine (от имен создателей:Zeev и Andi), успешно справлялся с этой задачей и был реализован в 1999 году. Основной идей его использования была возможность компиляции сценария в исполняемый модуль, за счет чего производительность можно было поднять на порядок. PHP 4, работающий на этом движке вышел в 2000 году. В дополнение к улучшению производительности, PHP 4 имел новые возможности по поддержке сессий, буферизацию вывода, безопасные способы обработки вводимой пользователем информации и новые языковые конструкции. С выходом 4 версии PHP стал использоваться уже на более чем 20% доменов Интернета.  За время с 2000 по 2004 год продолжались активные работы по улучшению 4 версии, но почти сразу PHP Group приступила к продумыванию возможностей новой версии. В первую очередь было решено усилить объектные возможности языка, что позволяло использовать его для реализации достаточно крупных проектов. Работы по созданию версии 5 велись продолжительное время, в них принимало участие рекордное количество специалистов, из которых хотелось бы особо отметить Стерлинга Хьюза (SterlingHughes) и МаркусаБергера (MarcusBoerger).  И вот, наконец, в июле 2004 года, выходит официальный релиз PHP 5. В первую очередь, как и планировалось, переработке подвергся весь механизм работы с объектами. И если в предыдущих версиях объектно-ориентированное программирование на PHP было возможно в минимальной степени, из-за чего и использовалось на практике не часто, то PHP 5 обладает великолепным потенциалом реализации объектного программирования. Кроме этого, PHP обогатился рядом ценных расширений для работы с XML, различными источниками данных, генерации графики и пр.  Все основные библиотеки для работы с XML, которые имелись в PHP 4, были подвергнуты серьезной переработке. Такие популярные расширения, как SAX, DOM и XSLT, теперь используют инструмент libxml2, что делает их еще более эффективными. В PHP 5 также включены два новых расширения – SimpleXML и SOAP. SimpleXML позволяет значительно упростить работу с XML-данными, представляя содержимое XML-документа в виде PHP-объекта. Никогда еще работа с XML в PHP не велась так просто. Расширение SOAP позволяет строить на PHP сценарии, обменивающиеся информацией с другими приложениями при помощи XML-сообщений поверх существующих веб-протоколов, например HTTP. Появляется возможность интегрировать PHP приложения с популярнейшими на сегодняшний день веб-сервисами. Расширение SOAP для PHP 5 предоставляет разработчикам средство для достаточно быстрого создания эффективных SOAP-клиентов и SOAP-серверов.  Новое расширение PHP 5 MySQLi (MySQLImproved) предназначено для работы с MySQL-сервером версий 4.1.2 и выше, реализуя не только процедурный, но и объектно-ориентированный интерфейс к MySQL. Дополнительные возможности этого модуля включают – SSL, контроль транзакций, поддержка репликации и пр.  Расширение SQLite позволяет строить приложения, хранящие данные в обычных файлах, с возможностью использования к ним интерфейса SQL. Главное преимущество SQLite – исключительная простота использования. SQLite наряду с процедурными имеет также мощные объектно-ориентированные возможности для работы с данными. Другие отличительные особенности SQLilte – высокая скорость, отсутствие сложных механизмов администрирования, легкая переносимость и пр. Многие эксперты прогнозируют большую популярность данного расширения PHP.  Другие новые расширени PHP 5 включают: - Tidy – для анализа и исправления HTML-документов - Perl – использование Perl-сценариев непосредственно из PHP-кода - SPL (Standard PHP Library) – расширение ZE2, определяющее стандартный набор интерфейсов и классов - PDO (PHP DataObjects) – предоставляет универсальный интерфейс доступа к данным из PHP - PIMP – новая библиотека для работы с графикой, пришедшая на замену модуля GD. Среди других крайне полезных добавлений в PHP 5 следует отметить новую схему обработки исключений. Конструкция try/catch/throw позволит весь код обработки ошибок локализовать в одном месте сценария.

Кроме этого, в PHP 5:  - используется новый более быстрый диспетчер памяти - PHP 5 дополнен свойствами, необходимыми для чёткой реализации структуры PEAR и связанной с ним функциональности - добавлено множество новых функций для работы с массивами, потоками, файлами, строками и пр.

1.3 CSS.

CSS (CascadingStyleSheets — каскадные таблицы стилей) – одна из базовых технологий в современном Интернете. Нечасто можно встретить сайт, свёрстанный без примененения CSS.

Стили не напоминают структуру HTML. Они используют формат «свойство: значение» и большая часть свойств может использоваться для большинства HTML-тегов.

CSS-код – это список инструкций для браузера, – как и где отображать элементы веб-страницы, написанный особым образом. Под «элементами» обычно подразумеваются теги XHTML/HTML и их содержимое.

Инструкции CSS удобно хранить в виде отдельного текстового файла с расширением .css, либо в виде отдельного текстового фрагмента в начале XHTML/HTML-документа

1.3.1 История CSS.

Принятие Консорциумом W3C в декабре 1996 года в качестве стандарта CSS первого уровня был огромным шагом вперед, поскольку позволял отделить содержание WEB-страницы (текст, изображение и т.д.) от ее форматирования (макет и характеристики текста, например, информация о шрифтах). После этого язык HTMLснова стал функционально-ориентированным (а не ориентированным на форму), что однако не мешало пользователем контролировать вид страницы.

В мае 1998 года был принят стандарт CSS2, позволяющий разработчикам осуществлять контроль над WEB-страницами на более высоком уровне. Этот стандарт основан на CSS первого уровня и включал новые функции, в частности, возможность точно располагать элементы и объекты WEB-страницы, а также звуковые таблицы стилей, позволяющие специальному программному обеспечению считывать содержимое WEB-страницы (что полезно для слабовидящих пользователей).

Уровень развития первый (CSS1). На данном этапе имеется возможность задавать гарнитуру и размер шрифта, а еще изменять его стиль: обычный, курсив или полужирный. Благодаря спецификации имеется возможность определять рамки, фоны, цвета текста и другие элементы страницы.  Можно задавать расстояние между словами, межстрочные отступы и межсимвольный интервал.  А также производить выравнивание текста, таблиц, изображений.  Имеются свойства внутренних и внешних отступов и рамок, ширины, высоты и блоков. А также входили в данную спецификацию ограниченные средства по позиционированию различных элементов, например, clear и  float. Самый первый браузер для использования являлся MicrosoftInternetExplorer 3. Вышел 1996 года в августе, он то и поддерживал новый принятый стандарт. MicrosoftInternetExplorer 3 понимает отлично все свойства текста, шрифта, фона, цвета, но использование блочной модели происходило лишь частично. Уровень развития второй(CSS2). Рекомендация W3C, принята 12 мая 1998 года. Основана на CSS1 с сохранением обратной совместимости за несколькими исключениями. Добавление к функциональности:

Блочная вёрстка. Появились относительное, абсолютное и фиксированное позиционирование. Позволяет управлять размещением элементов по странице без табличной вёрстки.

Типы носителей. Позволяет устанавливать разные стили для разных носителей (например монитор, принтер, КПК).

Звуковые таблицы стилей. Определяет голос, громкость и т. д. для звуковых носителей (например для слепых посетителей сайта).

Страничные носители. Позволяет, например, установить разные стили для элементов на чётных и нечётных страницах при печати.

Расширенный механизм селекторов.

Указатели.

Генерируемое содержимое. Позволяет добавлять содержимое, которого нет в исходном документе, до или после нужного элемента.

В настоящее время W3C больше не поддерживает CSS2 и рекомендует использовать CSS2.1 Уровень 2, ревизия 1 (CSS2.1)

Рекомендация W3C, принята 7 июня 2011 года.

CSS2.1 основана на CSS2. Кроме исправления ошибок, в новой ревизии изменены некоторые части спецификации, а некоторые и вовсе удалены. Удаленные части могут в будущем быть добавлены в CSS3.

Уровень 3 (CSS3)

Разрабатываемая версия.

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

Уровень 4 (CSS4)

Разрабатывается W3C с 29 сентября 2011 года.