Тарифы Услуги Сим-карты

Что такое PHP для чего PHP нужен и как работает PHP. HTML, CSS, PHP, JavaScript, SQL – что и зачем

Последнее обновление: 20.10.2017

На сегодняшний день PHP является наиболее распространенным языком веб-программирования. Подавляющие большинство сайтов и веб-сервисов в интернете написано с помощью PHP. По некоторым оценкам PHP применяется более чем на 80% сайтов, среди которых такие сервисы, как facebook.com, vk.com, baidu.com и другие. И такая популярность неудивительна. Простота языка позволяет быстро и легко создавать сайты и порталы различной сложности.

PHP был создан в 1994 году датским программистом Расмусом Лердорфом и изначально представлял собой набор скриптов на другом языке Perl. Позже этот набор скриптов был переписан в интерпретатор на языке Си. И с самого возникновения PHP (сокращение от PHP: Hypertext Preprocessor - PHP: Препроцессор гипертекста) представлял удобный набор инструментов для упрощенного создания веб-сайтов и веб-приложений.

Какие преимущества предоставляет PHP?

    Для всех наиболее распространенных операционных системам (Windows, MacOS, Linux) есть свои версии пакетов разработки на PHP, а это значит, что вы можете создавать веб-сайты на любой из этих операционных систем.

    PHP может работать в связке с различными веб-серверами: Apache, Nginx, IIS

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

    PHP похож на язык Си, поэтому, зная Си или один из языков с сиподобным синтаксисом, будет проще овладеть PHP

    PHP поддерживает работу с множеством систем баз данных (MySQL, MSSQL, Oracle, Postgre, MongoDB и другие)

    Распространенность хостинговых услуг и их дешевизна. Так как, как правило, хостинговые компании размещают веб-сайты на PHP на веб-серверах Apache или Nginx, которые работают на одной из операционных систем семейства Linux. И веб-серверы, и операционные системы на базе Linux бесплатны, что снижает общую стоимость использования хостинга

    Постоянное развитие. PHP продолжает развиваться, выходят все новые версии, которые несут новые функции, адаптируя язык программирования к новым вызовам. И, как правило, перейти на новую версию не составляет труда.

    К настоящему моменту (октябрь 2017) текущей стабильной версией PHP является PHP 7.1.

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

Здравствуйте уважаемые будущие программисты. Начинаем .

Прежде чем начать произносить умные определения, попробую объяснить Вам, что такое PHP, на примере из жизни.

Представьте что наш сайт — это дом. Красивый дом с бежевыми стенами, зелёной крышей, белыми окнами, шоколадными дверями.

И внутри красота. Прекрасные обои, плитка, сантехника, мебель, и даже посуда.

Так вот, вся эта картинка создаётся на html и css.

А вот чтобы вдохнуть в Ваш дом жизнь, чтоб в нём появились люди, стали общаться и что-то делать, да и чтоб другие люди смогли всё это увидеть нужен php.

У такой компьютерной жизни есть название — интерактивность, и создаётся она языком программирования PHP.

Ну а теперь более научное определение.

PHP — это язык программирования, специально разработанный для написания web-приложений (сценариев) и вот что о нём написано в Википедии:

А пока немного наглядности. Вот так выглядит html





Документ без названия


Привет мир!

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




Вот так CSS

#header {
height : 80px ;
background-color : #25B33f ;
margin-bottom : 10px ;
}
#sidebar {
background-color : #2FF553 ;
margin-bottom : 10px ;
width : 180px ;
padding : 10px ;
float : right ;
}

А вот так PHP.

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

Причём изучение php, по моему, невозможно без знания основ html и css, так как он является как бы управляющим тем, что написано на этих двух языках.

То есть, html — основа, css — оформление, а php — управление.


Перемена

— Чем ты кормишь свою собачку?
— Помидорами.
— Ух, ты, а у меня не ест.
— У меня тоже.

PHP (англ. PHP: Hypertext Preprocessor -- «PHP: препроцессор гипертекста», англ. Personal Home Page Tools (устар.) -- «Инструменты для создания персональных веб-страниц») -- язык программирования, созданный для генерирования HTML-страниц на веб-сервере и работы с базами данных. В настоящее время поддерживается подавляющим большинством хостинг-провайдеров. Входит в LAMP -- распространённый набор для создания веб-сайтов (Linux, Apache, MySQL, PHP (Python или Perl)).

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

В области программирования для Сети, PHP -- один из популярнейших скриптовых языков (наряду с JSP, Perl и языками, используемыми в ASP.NET) благодаря своей простоте, скорости выполнения, богатой функциональности и распространению исходных кодов на основе лицензии PHP. PHP отличается наличием ядра и подключаемых модулей, «расширений»: для работы с базами данных, сокетами, динамической графикой, криптографическими библиотеками, документами формата PDF и т. п. Любой желающий может разработать своё собственное расширение и подключить его. Существуют сотни расширений, однако в стандартную поставку входит лишь несколько десятков хорошо зарекомендовавших себя. Интерпретатор PHP подключается к веб-серверу либо через модуль, созданный специально для этого сервера (например, для Apache или IIS), либо в качестве CGI-приложения.

Кроме этого, он может использоваться для решения административных задач в операционных системах GNU/Linux, Microsoft Windows, Mac OS X и других версиях ОС. Однако в таком качестве он не получил распространение, отдавая пальму первенства Perl, Python и VBScript.

В настоящее время PHP используется сотнями тысяч разработчиков. Порядка 20 миллионов сайтов сообщают о работе с PHP, что составляет более пятой доли доменов Интернета.

Название PHP -- рекурсивная аббревиатура, означающая «PHP: Hypertext Preprocessor» (ранее акроним расшифровывался как «Personal Home Page Tools»). Изначально PHP создавался в качестве надстройки над Perl для облегчения разработки веб-страниц.

В 1994 году датский программист (ныне живущий в Канаде) Расмус Лердорф (Rasmus Lerdorf) написал набор скриптов на Perl/CGI для вывода и учёта посетителей его онлайн-резюме, обрабатывающий шаблоны HTML-документов. Лердорф назвал набор Personal Home Page (Личная Домашняя Страница). Вскоре функциональности и быстроты Perl -- интерпретатора скриптов -- перестало хватать, и Лердорф написал на языке C новый интерпретатор шаблонов PHP/FI (англ. Personal Home Page / Forms Interpreter -- «Личная Домашняя Страница / Интерпретатор форм». PHP/FI включал базовую функциональность сегодняшнего PHP: оформление переменных в стиле Perl ($имя_переменной для вывода значения), автоматическую обработку форм и встраиваемость в HTML-текст и многое другое. Новорожденный язык отличался от своего прародителя более простым и ограниченным синтаксисом.

В 1997 году после длительного бета-тестирования вышла вторая версия обработчика, написанного на C -- PHP/FI 2.0. Её использовали около 1 % (приблизительно 50 тысяч) всех интернет-доменов мира.

PHP 3.0 была первой версией, напоминающей PHP, каким мы знаем его сегодня. В 1997 году два израильских программиста, Энди Гутманс (Andi Gutmans) и Зээв Сураски (Zeev Suraski), разработчики из израильского технологического института, расположенного в Хайфе, Израиль, переписали код с нуля: PHP/FI 2.0 был сочтён ими непригодным для разработки приложения электронной коммерции, над которым они в то время работали. Для совместной работы над PHP 3.0 с помощью базы разработчиков PHP/FI 2.0 Энди, Расмус и Зив решили объединиться и объявить PHP 3.0 официальным преемником PHP/FI, разработка же PHP/FI была практически полностью прекращена.

Одной из сильнейших сторон PHP 3.0 была возможность расширения ядра. Впоследствии интерфейс написания расширений привлёк к PHP множество сторонних разработчиков, работающих над своими модулями, что дало PHP возможность работать с огромным количеством баз данных, протоколов, поддерживать большое число API. Фактически, это и был главный ключ к успеху, но стоит добавить, что немаловажным шагом оказалась разработка нового, намного более мощного и полного синтаксиса с поддержкой ООП.

Абсолютно новый язык программирования получил новое имя. Разработчики отказались от дополнения о персональном использовании, которое имелось в аббревиатуре PHP/FI. Язык был назван просто PHP.

К концу 1998 года PHP использовался десятками тысяч пользователей. Сотни тысяч веб-сайтов сообщали о том, что они работают с использованием этого языка. В то время PHP 3.0 был установлен приблизительно на 10 % веб-серверов Интернета.

PHP 3.0 был официально выпущен в июне 1998 года после 9 месяцев публичного тестирования.

PHP 4.0. К зиме 1998 года, практически сразу после официального выхода PHP 3.0, Энди Гутманс и Зив Сураски начали переработку ядра PHP. В задачи входило увеличение производительности сложных приложений и улучшение модульности базиса кода PHP. Расширения дали PHP 3.0 возможность успешно работать с набором баз данных и поддерживать большое количество различных API и протоколов, но PHP 3.0 не имел качественной поддержки модулей и приложения работали неэффективно.

Новый движок, названный Zend Engine (от имён создателей, Зива и Энди, также основателей Zend Technologies), успешно справлялся с поставленными задачами и впервые был представлен в середине 1999 года. PHP 4.0, основанный на этом движке и принёсший с собой набор дополнительных функций, официально вышел в мае 2000 года, почти через два года после выхода своего предшественника PHP 3.0. В дополнение к улучшению производительности, PHP 4.0 имел ещё несколько ключевых нововведений, таких как поддержка сессий, буферизация вывода, более безопасные способы обработки вводимой пользователем информации и несколько новых языковых конструкций.

Прекращение выпуска обновлений PHP 4 было запланировано на конец 2007 года. Однако вплоть до 8 августа 2008 года выпускались критические обновления безопасности. С 9 августа 2008 года всякая поддержка версии PHP 4.x была прекращена.

PHP 5.0. Пятая версия PHP была выпущена разработчиками 13 июля 2004 года. Изменения включают обновление ядра Zend (Zend Engine 2), что существенно увеличило эффективность интерпретатора. Введена поддержка языка разметки XML. Полностью переработаны функции ООП, которые стали во многом схожи с моделью, используемой в Java. В частности, введён деструктор, открытые, закрытые и защищённые члены и методы, окончательные члены и методы, интерфейсы и клонирование объектов. Нововведения, однако, были сделаны с расчётом сохранить наибольшую совместимость с кодом на предыдущих версиях языка. На данный момент стабильной и наиболее популярной является версии PHP 5.xx.

  • 1 августа 2008 года анонсирована первая альфа-версия PHP 5.3.0, которая содержит ряд изменений и дополнений:
    • - Пространство имен
    • - Позднее статическое связывание и специальный метод __callStatic()
    • - Анонимные функции
    • - Addition of the intl, phar (phar is scheduled for some more work a head of alpha2), fileinfo and sqlite3 extensions
    • - Optional cyclic garbage collection
    • - Optional support for the MySQLnd replacement driver for libmysql
    • - Отмена поддержки версий операционной системы до Windows 2000 (Windows 98, NT4, и.т.д.)
    • - Новые синтаксические конструкции, такие как NOWDOC, ограниченный GOTO, короткий вид тернарного оператора "?:"

PHP 6.0. Шестая версия PHP находится в стадии разработки с октября 2006 года. В ней уже сделано множество нововведений, как, например, исключение из ядра регулярных выражений POSIX и «длинных» суперглобальных массивов, удаление директив safe_mode, php_magic_quotes и register_globals из конфигурационного файла php.ini. Также много внимания уделено поддержке Юникода. Загрузить текущую версию разрабатываемого кода для GNU/Linux/BSD и скомпилированные версии для Microsoft Windows можно на сайте PHP Snapshots.

Синтаксис PHP . Синтаксис PHP подобен синтаксису языка Си. Некоторые элементы, такие как ассоциативные массивы и цикл foreach, заимствованы из Perl.

Для работы программы не требуется описывать какие-либо переменные, используемые модули, и т.п. Любая программа может начинаться непосредственно с оператора PHP.

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

Помимо ограничителей , допускается использование дополнительных вариантов, таких как и . Кроме того, до версии 6.0 допускается использование ограничителей языка программирования ASP (конструкции и могут быть выключены в конфигурационном файле php.ini).

Имена переменных начинаются с символа $, тип переменной объявлять не нужно. В отличие от имён функций и классов, имена переменных чувствительны к регистру. Переменные обрабатываются в строках, заключённых в двойные кавычки, и heredoc-строках (строках, созданных при помощи оператора $b; // Обращение к полю a объекта, т.к. $b = "a"

$obj->$c(); // Вызов метода function_name() объекта

Суперглобальные массивы. Суперглобальными массивами (англ. Superglobal arrays) в PHP называются предопределённые массивы. Большая часть этих массивов содержит входные данные запроса пользователя (параметры GET-запроса, поля форм при посылке методом POST, куки и т. п.).

Все суперглобальные массивы кроме $GLOBALS и $_REQUEST имеют устаревшие аналоги с длинными именами, которые доступны вплоть до пятой версии PHP (в шестой версии планируется их исключение). Таким образом, обращения $_GET["year"] и $HTTP_GET_VARS["year"] идентичны.

Массив всех глобальных переменных (в том числе и пользовательских).

$_SERVER (устаревший аналог -- $HTTP_SERVER_VARS)

Содержит переменные окружения, которые операционная система передает серверу.

$_ENV (уст. $HTTP_ENV_VARS)

Текущие переменные среды (англ. Environment variables). Их набор специфичен платформы, на которой выполняется скрипт.

$_GET (уст. $HTTP_GET_VARS)

Содержит параметры GET-запроса, переданные в URI после знака вопроса «?».

$_POST (уст. $HTTP_POST_VARS)

Ассоциативный массив значений полей HTML-формы при отправки методом POST. Индексы элементов соответствуют значению атрибута name элементов управления HTML-формы.

$_FILES (уст. $HTTP_POST_FILES)

Ассоциативный массив со сведениями об отправленных методом POST файлах. Каждый элемент имеет индекс идентичный значению атрибута «name» в форме и, в свою очередь, также является массивом со следующими элементами:

["name"] -- исходное имя файла на компьютере пользователя.

["type"] -- указанный агентом пользователя MIME-тип файла. PHP не проверяет его и поэтому нет никаких гарантий что указанный тип соответствует действительности.

["size"] -- размер файла в байтах.

["tmp_name"] -- полный путь к файлу во временной папке. Файл необходимо переместить оттуда функцией move_uploaded_file. Загруженные файлы из временной папки PHP удаляет самостоятельно.

$_COOKIE (уст. $HTTP_COOKIE_VARS)

Ассоциативный массив с переданными агентом пользователя значениями кук.

Содержит элементы из массивов $_GET, $_POST, $_COOKIE. С версии PHP 4.1 включает $_FILES.

$_SESSION (уст. $HTTP_SESSION_VARS)

Содержит данные сессии.

Объектно-ориентированное программирование . PHP поддерживает широкие объектно-ориентированные возможности, полная поддержка которых была введена в пятой версии языка.

Класс в PHP объявляется с помощью ключевого слова class. Методы и поля класса могут быть общедоступными (public, по умолчанию), защищёнными (protected) и скрытыми (private). PHP поддерживает все три основные механизма ООП -- инкапсуляцию, полиморфизм и наследование (родительский класс указывается с помощью ключевого слова extends после имени класса). Поддерживаются интерфейсы (ставятся в соответствие с помощью implements). Разрешается объявление финальных, абстрактных методов и классов. Множественное наследование классов не поддерживается, однако класс может реализовывать несколько интерфейсов. Для обращения к методам родительского класса используется ключевое слово parent.

Классы в PHP имеют ряд специальных методов (англ. Magic methods), начинающихся с двух символов подчёркивания. Особо стоит отметить конструктор (__construct(), в ранних версиях конструктором служил метод, одноименный с классом) и деструктор (__destruct()), а также методы чтения (__get()) и записи (__set()), свёртывания (__sleep()) и развёртывания (__wake()), клонирования (__clone()) и др. Эти методы являются достаточно гибким инструментом: переопределяя их, можно легко добиться существенного изменения поведения объекта.

Экземпляры класса создаются с помощью ключевого слова new, обращение к полям и методам объекта производится с использованием символов ->. Для доступа к членам класса из его методов используется переменная $this.

Язык PHP уверенно чувствует себя в топах самых популярных языков программирования, однако же у всего есть конец. Грозит ли PHP оказаться не у дел, что может его заменить и какой язык вы бы выбрали для создания сайта типа Facebook? На эти вопросы ответили пользователи сайта Quora .

Джордж Мауэр, преподает JS

PHP умирает, Java умирает, C# умирает, SQL умирает, JavaScript умирает, C умирает. И все равно проектов на этих языках значительно больше, чем проектов на всех неперечисленных языках программирования вместе взятых. Да, иногда новые тренды могут вытеснять что-то устоявшееся, но этот процесс происходит крайне медленно. Совсем не значит, что это самое старое - плохое.

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

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

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

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

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

На данный момент таким языком является Elixir. Он базируется на виртуальной машине Beam и является достаточно близким родственником языка Erlang, который на протяжении нескольких десятилетий отлично демонстрировал себя в ряде проектов. Кроме того, данный язык показывает просто невообразимые результаты в отношении производительности.

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

Еще одним вариантом может стать Clojure. Существует вероятность, что найти разработчиков на данном языке будет не так просто, но с учетом того, что этот язык - прямой потомок LISP, я могу искренне назвать его невероятно мощным и дающим множество вариантов развития.

Несколько важных замечаний:

  • присмотритесь к F# на фреймворке.Net или даже к вездесущему C#. Если вы все же выберете последний вариант, то будьте готовы к тому, что для создания отличной команды вам придется просмотреть и просеять намного большее количество резюме;
  • при помощи Scala можно творить впечатляющие вещи;
  • Node.js. Я просто обязан упомянуть Node.js. Лично я считаю, что на данный момент на вершине цепочки стоит Javascript, но Node уже долгое время также входит в список достаточно широко используемых языков. Кроме того, есть большое количество высококвалифицированных специалистов.

Reg.ru: домены и хостинг

Крупнейший регистратор и хостинг-провайдер в России.

Более 2 миллионов доменных имен на обслуживании.

Продвижение, почта для домена, решения для бизнеса.

Более 700 тыс. клиентов по всему миру уже сделали свой выбор.

*Наведите курсор мыши для приостановки прокрутки.

Назад Вперед

HTML, CSS, PHP, JavaScript, SQL – что и зачем?

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

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

Это вопросы следующего плана:

В каком порядке надо изучать языки создания сайтов?
- Что сложнее: JavaScript или PHP?
- Зачем нужен язык SQL?
- Чем отличаются версии CSS друг от друга, и какую из них следует изучать?
- Как работаю динамические сайты?
- Для чего нужен PHP?
и т.д…

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

В этом материале почти не будет примеров кода, т.к. перед нами стоит другая задача – получить общее представление о назначении каждого из языков и его месте в веб-разработке.

Итак, поехали. Начнем мы с языка HTML.

Расширения файлов: .htm , .html

HTML - это язык разметки гипертекста (от англ. HyperText Markup Language ).

Данный язык применяется для создания веб-страниц. Он интерпретируется (обрабатывается) браузером и отображается в виде документа в удобной для человека форме.

HTML – это неотъемлемая составляющая и основа практически любой веб-страницы. Язык HTML в первую очередь выступает как средство логической разметки страницы .

Именно HTML позволяет нам наделять содержимое страницы определенным смыслом, а реализуется это с помощью так называемых тэгов.

Тэги – это специальные маркеры, которые определенным образом интерпретируются браузером. Суть тэгов в том, что содержимое страницы, заключенное в разные тэги, по-разному обрабатывается браузером.

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

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

Мы можем поместить контент в тэг таблицы, и содержимое в итоговом документе будет отображаться в виде таблицы и т.д.

Иными словами, каждый из HTML-тэгов, предназначенных для разметки текстовой информации, придает этой информации некоторый смысл .

Язык HTML имеет достаточно длительную историю развития, и за это время претерпел значительные изменения. Большая часть изменений связана с добавлением в язык новых тэгов и «выводом из обращения» устаревших. На момент написания этой статьи уже была начата разработка версии HTML 5.1.

Для разных версий HTML предусмотрено разное объявление типа документа . Рассмотрим с вами пару примеров объявления типа HTML 4.01 (на данный момент его можно считать уже устаревшим).

1. Строгий (Strict) : не содержит элементов, помеченных как «устаревшие» или «не одобряемые» (deprecated):

2. Переходный (Transitional): содержит устаревшие теги в целях совместимости и упрощения перехода со старых версий HTML:

3. С фреймами (Frameset): аналогичен переходному, но содержит также теги для создания наборов фреймов:

Объявления типов документов, приведенные выше, со временем будут все больше уходить в прошлое, уступая место версии HTML 5.

В HTML 5 используется только один вариант DOCTYPE (тип документа):

Также следует упомянуть о том, что существует еще и язык XHTML . Это расширяемый язык разметки гипертекста (от англ. Extensible Hypertext Markup Language ). На данный момент его развитие остановлено и рекомендуется использовать HTML. Новые версии XHTML не выпускаются.

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

Однако такой подход считается неверным и устаревшим, т.к. для задания внешнего вида существует отдельный язык.

На этом с HTML мы завершаем и переходим к языку CSS.

Расширение файлов: .css

CSS – это язык описания внешнего вида документа, написанного с использованием языка разметки. Название произошло от англ. Cascading Style Sheets - каскадные таблицы стилей.

Проще говоря, язык CSS предназначен для того, чтобы придавать необходимый внешний вид HTML-документам.

Придание внешнего вида документам HTML – это хоть и самый популярный, однако лишь частный случай применения языка CSS, т.к. с его помощью можно придавать вид и документам других типов: XHTML, SVG и XUL . Про них мы отдельно говорить не будем, т.к. это выходит за рамки рассматриваемого вопроса.

Итак, целью создания CSS было отделение описания логической структуры веб-страницы от ее внешнего вида . Как вы уже знаете, для описания структуры используется HTML, для описания же того, как эта логическая структура будет выглядеть, отвечает как раз CSS.

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

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

Разумеется, для того, чтобы использовать CSS для придания внешнего вида HTML-документу, нужно этот документ как-то связать со стилями, т.е. «сообщить» HTML-документу, что он будет оформлен с помощью CSS.

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

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

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

Стили CSS могут быть подключены к странице (либо внедрены в нее) четырьмя следующими способами:

1. Если таблица стилей находится в отдельном файле, то она подключается к документу с помощью специального тэга link , который должен располагаться в этом документе внутри тэга head :

В атрибуте href при этом указывается путь до подключаемого файла стилей.

2. Второй способ подключения применяется также в том случае, если стили находятся в отдельном файле. При этом используется директива @import , которая должна находиться в этом документе внутри тэгов style head ):

@import url(style.css);

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

3. Третий способ используется в случае, когда стили CSS расположены внутри того документа, к которому они должны применяться. В этом случае стили должны находиться в этом документе внутри тэгов style (которые, в свою очередь, должны находиться внутри тэгов head ):

body { color: red; }

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

4. Четвертый способ также применяется в случаях, когда таблица стилей описана в самом документе. При этом стилевое оформление задается для какого-то конкретного элемента веб-страницы (тэга) посредством использования его атрибута style .

При этом все CSS-правила, заданные таким образом, будут применяться только к текущему тэгу (элементу веб-страницы).

Используем встроенные таблицы стилей.

В примере выше мы задаем размер шрифта и его цвет для одного конкретного абзаца текста в рамках документа.

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

Сами стилевые правила задаются в виде пар «свойство: значение;» . При этом применяются эти правила к так называемым селекторам. Скажем, в 3 примере мы имеем дело с селектором элемента (body ). В качестве свойства выступает color , а в качестве значения – red .

Всего существует 10 видов селекторов, рассмотрение которых, по понятным причинам, выходит за рамки данного обзора.

Важно, чтобы вы понимали общий принцип.

Селектор определяет один или группу элементов, к которым будут применяться стилевые правила (в нашем случае это все содержимое тэга body )

Свойство можно определить как вид преобразования, которое будет применено к элементу (в нашем случае это color , т.е. цвет текста).

Значение же определяет непосредственно значение определенного вида преобразования (в нашем примере это red , т.е. красный цвет).

В процессе своего развития язык CSS уже прошел достаточно длинный путь, и в настоящее время существует несколько его уровней: CSS1, CSS2, CSS2.1, CSS3. C конца 2011 года разрабатывается уже CSS4.

Смысл разных уровней в том, что происходит исправление существующих ошибок, добавление новых свойств, расширение механизма селекторов и т.д.

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

На этом обзор CSS мы заканчиваем и переходим к следующему звену – языку PHP.

Расширение файлов: .php

Когда вы уже хоть немного разобрались с HTML и CSS, то сразу возникает вопрос: «А что же дальше?» . Вы же хотели создавать классные сайты, а с помощью HTML и CSS сделать этого ну никак не получается…

Здесь вам нужен уже язык совершенно другого типа и назначения.

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

Что же такое PHP?

PHP расшифровывается как Hypertext PreProcessor (что-то вроде "преобработчик HTML").

Что это означает? Начнем немного издалека: есть два типа языков. Один тип называется "клиентским" , а другой - "серверным" .

Это значит, что клиентские языки работают в браузере каждого конкретного человека. Типичным представителем клиентских языков является JavaScript, о котором Вы наверняка слышали.

Все действия и команды, которые мы задаем, скажем, на языке JavaScript, выполняются браузером (для упрощения мы не рассматриваем серверный JavaScript).

Это означает, что один и тот же код, написанный нами, обрабатывается в одном случае браузером Internet Explorer, в другом - Firefox, в третьем - Opera, в четвертом - Google Chrome, т.е. тем обозревателем, который использует каждый конкретный человек для просмотра нашей страницы.

Браузер, таким образом, имеет альтернативное название - клиент .

В случае с серверными языками (к которым и относится PHP) мы наблюдаем другую картину.

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

Все команды и скрипты, написанные на языке PHP, выполняются именно на сервере , и никак иначе. После того, как PHP-скрипт выполнится на сервере, сервер "отдает" результат своей работы браузеру, который преобразует этот результат в удобный для нас вид.

Здесь важно понимать следующий момент: по исходному коду веб-страницы, который можно посмотреть в любом браузере через опцию вроде "Исходный код страницы" нельзя определить, использовался ли язык PHP для создания данной страницы, или нет.

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

Разница по сравнению с обычными статичными HTML-страницами заключается в одном дополнительном этапе обработки кода.

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

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

Вообще PHP прекрасно работает в паре с HTML . Более того, в HTML-код можно делать вставки PHP-кода, а с помощью PHP выводить HTML-разметку.

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

Для чего использовать PHP?

HTML на 100% статичен. Встраивая же в наши страницы PHP-код, мы можем добиться того, чтобы содержимое одной и той же страницы было различно в зависимости от определенных условий (динамические страницы).

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

Что нужно, чтобы начать работать с PHP?

Для полноценной работы с PHP на Вашем компьютере нужны следующие вещи:

1. Веб-сервер Apache (он используется в большинстве случаев);
2. Система Управления Базами Данных (СУБД) MySQL (в базе данных хранится наполнение сайта);
3. Установленный интерпретатор PHP;
4. Текстовый редактор, в котором Вы будете писать код;
5. Браузер.

Теперь чуть подробнее о первых трех пунктах.

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

2. СУБД MySQL нужна для хранения информации, которая будет на Вашем сайте. В случае с HTML-страницами все содержимое сайта находится непосредственно в них. Каждая страница содержит определенный объем информации (контента).

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

3. Интерпретатор PHP - это своеобразная программа, которая осуществляет обработку PHP-кода на веб-сервере. Без него мы никак не сможем выполнить наши PHP-скрипты и увидеть результат их работы.

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

В этом случае веб-сервер, дойдя до открывающего тэга PHP ( ) интерпретатор PHP прекращает свою работу.

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

Представим для начала, что у нас есть простой статичный сайт, написанный на языке HTML. Он состоит из ряда страниц и представляет собой просто набор неизменных файлов.

На таком сайте нет возможности создать форму обратной связи, комментарии, регистрацию пользователей, поиск и т.д.

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

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

Все, что мы можем – это вручную открыть отдельную HTML-страницу в редакторе кода и как-то ее модифицировать.

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

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

Возможность задания нужной нам логики «поведения» сайта является одной из важнейших и наиболее ценных в языке PHP.

Наряду с уже озвученными преимуществами следует упомянуть, что PHP предоставляет нам множество инструментов для работы с данными различных типов.

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

Помимо этого, язык PHP позволяет нам работать с файлами и папками . Мы можем его средствами создавать, редактировать и удалять файлы и папки. Мы можем перемещать и переименовывать их и выполнять множество других операций.

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

Это такие вещи, как:

Форма обратной связи;
- возможность комментирования;
- регистрация пользователей;
- поиск по сайту;
- запоминание введенной пользователем информации (по принципу «покупательской тележки»); и т.д.

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

Добавление новых материалов, редактирование категорий, модерирование комментариев, изменение пунктов меню сайта, управление настройками – все это и многое-многое другое можно реализовать средствами PHP.

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

С PHP мы заканчиваем и переходим к еще одному языку – JavaScript.

Расширение файлов: .js

JavaScript – это язык программирования, нашедший наиболее широкое применение в браузерах для придания интерактивности веб-страницам.

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

Основной задачей JavaScript в рассматриваемом нами контексте является манипулирование элементами DOM-модели web-страницы.

Давайте разберемся с тем, что же такое DOM .

DOM – это объектная модель документа (от англ. Document Object Model ).

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

Получение узлов;
- изменение узлов;
- изменение связей между узлами;
- удаление узлов.

Именно эти манипуляции и позволяет нам осуществлять над элементами страницы язык JavaScript.

Для добавления JavaScript-кода на страницу можно использовать тэг script . Его рекомендуется помещать внутри тэга head , хотя это и не обязательно.

Контейнеров script в одном документе может быть сколько угодно. При этом атрибут «type="text/javascript"» указывать необязательно, т.к. значение javascript является значением по умолчанию.

Ниже приведен пример скрипта, выводящего так называемое модальное окно с классической надписью «Hello, World!» внутри браузера:

alert("Hello, World!");

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

Удалить

При этом при отрицательном ответе (т.е. «нет», если мы не уверены) происходит блокировка перехода по ссылке.

Обратите внимание, что такая практика использования JavaScript не считается хорошей.

Правильным вариантом применения JavaScript был бы такой подход. Сперва мы снабжаем идентификатором (id="alertLink" ) ссылку:

Удалить После этого пишем следующий код в отдельном JavaScript-файле (как его подключить к документу будет показано чуть ниже): window.onload = function() { var linkWithAlert = document.getElementById("alertLink"); linkWithAlert.onclick = function() { return confirm("Вы уверены?"); }; };

В этом примере мы создаем функцию, срабатывающую при загрузке веб-страницы. Эта функция находит элемент с идентификатором alertLink и отслеживает событие клика по нему (т.е. по ссылке «Удалить»).

По событию клика мы выводим модальное окно с уже знакомым нам сообщением.

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

Важно, чтобы вы поняли сам принцип, подход к работе при использовании JavaScript.

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

Здесь ситуация очень похожа на ту, что была в случае с CSS, только вместо CSS-кода мы пишем в файле (с расширением.js) JavaScript-код, после чего подключаем его в нужный нам файл в тэге head при помощи конструкции:

После такой манипуляции нам будут доступны все функции, которые были написаны нами в JavaScript-файле.

Итак, можно сказать, что JavaScript – это язык, который позволяет вам активно управлять структурой вашей страницы, манипулировать ее элементами .

На практике это находит свое применение при создании различных анимационных эффектов, эффектов перемещения, растворения, увеличения и уменьшения объектов.

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

Часто JavaScript используется и для первичной проверки данных , которые пользователь вводит в формы.

Говоря о JavaScript, нельзя не упомянуть о специальных JavaScript-библиотеках (jQuery, Prototype, MooTools и др.)

Смысл JavaScript-библиотек заключается в том, чтобы предоставить кросс-браузерный интерфейс к методам DOM .

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

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

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

С JavaScript у нас все, и мы переходим к последнему языку – SQL

Расширения файлов: .sql

SQL – это информационно-логический язык, предназначенный для описания, изменения и извлечения данных, хранимых в реляционных базах данных.

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

Для чего вообще нужна база данных?

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

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

Базы данных имеют ряд преимуществ по сравнению, например, с хранением текстовой информации в файлах:

1. Высокая скорость получения информации;

2. Они позволяют получать произвольный доступ к данным. (т.е. легко обратиться к какой-то одной, конкретной записи в базе);

3. Из базы данных можно извлекать данные, соответствующие определенным критериям, которые нас интересуют;

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

Если бы мы имели дело с файлами, то нам пришлось бы намного сложнее.

Поэтому, параллельный доступ к данным - одно из важнейших преимуществ баз данных.

Отличие базы данных от СУБД

Важно различать термины "база данных" и "система управления базами данных" (СУБД) .

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

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

СУБД же выбирается нами из определенного ограниченного списка (Oracle, MySQL, PostgreSQL и т.д.)

Чаще всего можно встретить связку PHP + MySQL . В большинстве случаев вы также будете работать именно с ней.

Рассмотрим теперь понятие реляционной базы данных .

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

Реляционные базы данных - это базы данных, состоящие из таблиц.

Само же слово "реляционные" происходит от англ. relation - отношение.

Под "отношением" понимается связь между различными таблицами, входящими в базу данных.

Что характерно, таблицы в базе данных - это действительно обычные таблицы, которые по своей сути идентичны любым таблицам, с которыми вы сталкивались в жизни - начиная от таблицы умножения, и заканчивая таблицами в Microsoft Excel .

Таблица имеет некоторое ограниченное количество столбцов (как правило, небольшое) и сколь угодно много строк.

Каким образом можно вставлять новые данные в базу, изменять их, удалять и производить иные манипуляции?

Для этого и существует специальный язык SQL (от англ. Structured query language - язык структурированных запросов).

Т.е. SQL - это универсальный компьютерный язык, разработанный именно для управления реляционными базами данных.

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

Как правило, SQL-запросы передаются в СУБД посредством внешней программы. При этом СУБД выполняет указанный запрос и возвращает в ответ некоторый результат.

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

Запросы на создание или изменение в базе данных новых или существующих объектов (при этом в запросе описывается тип и структура создаваемого или изменяемого объекта);
- запросы на получение данных;
- запросы на добавление новых данных (записей)
- запросы на удаление данных;
- обращения к СУБД.

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

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

Именно поэтому во многих инструментах веб-разработки (к примеру, во фреймворке CodeIgniter) взаимодействие сайта с базой данных реализовано с помощью своеобразной «надстройки», которая позволяет выполнять с ней все необходимые действия, не изучая при этом сам язык SQL.

Однако если вы не используете инструментов, подобных CodeIgniter, то для создания полноценного веб-приложения, управляемого базой данных, вам, разумеется, нужно будет освоить SQL.

Ну что ж, давайте подведем небольшой итог этого обзора.

Фундаментом веб-разработки был и остается язык HTML . Без него все остальное практически лишено смысла, ведь именно HTML-разметка преобразуется браузером в ту итоговую картину, что мы видим на экране монитора.

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

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

JavaScript выступает в качестве важного, но не всегда обязательного дополнения. Он способен существенно повысить удобство использования вашего сайта и его интерактивность, добавить в него определенную «изюминку».

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

С уважением, Дмитрий Науменко.

P.S. Кое-что понятно, но куда двигаться дальше? Присмотритесь к премиум-урокам по различным аспектам сайтостроения, а также к бесплатному курсу по созданию своей CMS-системы на PHP с нуля. Все это поможет вам быстрее и проще освоить веб-технологии: начиная с HTML и CSS и заканчивая JavaScript, PHP и SQL.

Понравился материал и хотите отблагодарить?
Просто поделитесь с друзьями и коллегами!