Программа курса полностью зависит от Вас. Это значит, что все темы программы обучения и количество часов для их освоения зависит от Вашего уровня знаний, скорости восприятия и конкретных задач, целей прохождения курса.
Стандартная программа (базовый курс) может быть сокращена или расширена по Вашему желанию.
Так, например, для тех слушателей, которые хотят быстро научиться создавать WEB - сайты, публиковать их в интернет и самостоятельно рекламировать, предлагаются программы обучения, основанные на использовании современных систем управления контентом - CMS, без углублённого изучения языков программирования. Акцент делается при этом на самых распространённых сегодня CMS: Joomla, WordPress.
По статистике - более 90% интернет-сайтов строится сегодня на базе CMS. Такой подход позволяет сразу сконцентрироваться на целях и задачах сайта, не углубляясь в технические подробности его построения.
По окончании такого курса Вы сможете быстро воплощать в пространстве интернет любые Ваши коммерческие замыслы без дополнительных затрат.
Современные WEB-технологии позволяют создавать полноценные интернет-сайты не только профессионалам с многолетним опытом работы, но и тем, у кого нет глубоких специальных знаний и навыков в области программирования или компьютерной графики.
Вам или Вашим клиентам необходимо:
У Вас нет времени, желания или возможности:
Именно такой подход к WEB-разработкам и интернет-маркетингу наиболее быстро и эффективно решит Ваши сегодняшние задачи.
По окончании курса Вы получаете достаточный опыт и навыки, которые позволят Вам достаточно быстро строить различные WEB - сайты, размещать их в Интернет, находить и подключать к этим сайтам более сложные функциональные блоки, такие как: приём заявок от пользователей, IP телефонию, платёжные системы и многое другое.
Если Вы уже занимаетесь самостоятельно созданием сайтов и хотите расширить Ваши возможности, как WEB - разработчика, можете выбрать, например, такие направления обучения:
PHP - язык программирования, разработанный специально для Web. Это так называемый интерпретируемый (скриптовый язык). Интерпретатор языка PHP, который выполняется на сервере, последовательно читает и выполняет инструкции PHP, найденные в файле.
Язык PHP был задуман в 1994 году и первоначально был работой одного человека - Расмуса Лердорфа. Он был принят другими разработчиками и постоянно совершенствуется, предоставляя нам многофункциональный язык программирования, который мы видим сегодня.
Количество установок PHP постоянно растёт. Это можно наглядно демонстрируется на сайте http://php.net/usage.php
PHP - проект с открытым исходным кодом (open source), это означает, что у вас есть доступ к исходному коду и легально можно использовать, изменять и распространять его бесплатно.
Первоначально акроним PHP означал: Personal Home Page, но был изменен позднее, в соответствии с GNU - соглашением об именах (GNU = Gnu's Not Unix) и теперь означает: Hypertext Preprocessor. Текущей рабочей версией PHP является версия 7.
PHP-код вписывается в HTML-страничку наряду с другими инструкциями (HTML, CSS, JavaScript, ... ), этот код выполняется сервером каждый раз,
когда страница запрашивается браузером пользователя.
Когда браузер пользователя (например - Chrome, IE, Opera, ...) запрашивает по определённому адресу (URL = Universe Resource Locator) нужную WEB-страничку, этот запрос (HTTP request) получает WEB-сервер, на котором эта страничка физически находится (например - WEB-сервер Apache, IIS, ... ).
Сервер (WEB server) берёт эту страничку со своего жёсткого диска и, в соответствиями с найденными в ней директивами, формирует ответ (HTTP response )
и посылает этот ответ запросившему клиенту (WEB client).
WEB страничка в своём тексте может содержать различную информацию (HTML код, программы на языке PHP и тд). До отправки странички клиенту (браузеру) WEB сервер выполняет найденный в ней PHP код (оставляя без изменения весь текст, который находится вне PHP - тегов (HTML, JavaScript, ), модифицирует страничку по результатам работы этого кода и уже модифицированную версию отправляет браузеру.
Таким образом, PHP-код выполняется на веб-сервере, сервер генерирует HTML или другой вывод, дополняет им исходный код и уже дополненную результатами PHP страничку посылает браузеру.
Для начала работы над проектами на языке PHP необходим определённый набор программного обеспечения. Нужен WEB сервер (например: для компьютеров под управление Windows - IIS или Apache, для Linux - компьютеров - сервер Apache). На сервере необходим язык PHP. Для большинства проектов нуже сервер управления базами данных (например: MySQL). Для написания и отладки PHP-программ часто используется программы - IDE (Integrated Developer Environment ;- интегрированная среда разработчика)
Для начинающих разработчиков, не имеющих опыта в адимистрировании WEB серверов, лучше всего использовать готовые решения в виде сборки (bundle), которые устанавливаются на локальный компьютер с минимальными требованиями к ресурсам самого компьютера и к административным навыкам пользователя.
Популярные сборки, например: AMPPS - server, WAMP server .
Эти сборки есть для всех версий ОС на локальном компьютере (Windows, Mac, Linux, 32-bit, 64-bit, ...). Они включают в себя и WEB сервер, и PHP, и MySQL.
Для отдадки программ можно использовать, например, редактор NotePad++ с плагинами для отладки HTML, CSS, JavaScript, PHP.
Текст программы на языке PHP находится в текстовом файле с расширением PHP. Программа может занимать весь файл, может чередоваться в файле с HTML - тегами, может быть импортирована из другого файлаю
WEB сервер, открыв этот файл, запускает для его анализа интерпретатор языка PHP. Интерпретатор языка игнорирует все HTML теги и выполняет все директивы языка PHP. После этого он формирует новую WEB страничку, включив в неё все HTML теги, найденные в исходном файле и результаты работы PHP программ из этого файла.
Эта, динамически сформированная WEB странича, посылается клиенту (интернет-браузеру, который к серверу обращался).
В этом текстовом файле программа PHP может отделяться от тегов HTML тегами PHP -
Теги HTML
<?php
программа1 на языке PHP
?>
Теги HTML
<?php программа2 на языке PHP ?> Теги HTML
Может вставляться внутрь HTML тега
<h1 style="color:#0000<?php echo 'FF' ?>"> Текст синего цвета </h1>
Базовый синтаксис языка PHP
Программа на языке PHP состоит из набора предложений (ststements), разделённых символом: ";".
Интерпретатор PHP, Понятия:
Комментарии позволяют автору программы включить в код дополнительную информацию, памятки, пояснения. Коммертарии никак не используются интерпретатором языка, то есть не влияют на ход выполнения программы.
Массив (Array) можно представить как целый набор переменных разного типа, объединённых под одним идентификатором. PHP поддерживает массивы разного типа.
Язык PHP предоставляет большое количество встроенных стандартных функций для работы с массивами.
Условные операторы. Ветвления. if, else, elseif, switch.
Операторы PHP, которые позволяют повторно выполнять определённые блоки программы, анализируя во время выполнения условие окончания цикла.
Функции в языке PHP аналогичны функциям в других языках программирования. Функция представляет собой поименованный блок, участок кода. По этому имени фунция вызывается для выполнения.
Таким образом, один раз определив функци и присвоив ей имя, использовать её можно многократно.
Функция может использовать один или несколько аргументов-параметров. Это специальные переменные, которые формально описываются в момент создания функции, а реальные значения получают во время вызова, выполнения функции.
Функция может возвращать в вызываемую программу некоторое значение через своё имя.
Работа с функциями состоит из 2-х этапов:
Декларация текстовых (строковых переменных). Разделители строк. Интерпретация строк. Функции PHP для работы со строковыми переменными.
Пространство имён (namespace)
Область видимости переменных. Пространство имён.
Функции PHP для работы с датами, временем.
Запросы HTTP, параметры URL, формы HTML. Методы: get, post. $_POST, $_GET
Фильтры позволяют выполнить проверку данных и обезопасить их от возможных вредоносных кодов. Это особенно важно, если содержимое получено из неизвестных или ненадежных источников, таких, как пользовательский ввод. Например, такие данные можно получить из HTML-форм.
Существует два основных типа фильтрации: проверка и очистка.
Проверка используется для определения соответствия данных определённым критериям. Например, применение FILTER_VALIDATE_EMAIL позволяет проверить, являются ли введённые данные адресом email,, сами данные при этом останутся нетронутыми.
Большую роль в WEB - программировании играет передача данных через сайт на сервер и обработка этих данных.
Эту роль выполняют формы (forms). Форма собирает введённые посетителем сайта данные (они ввдятся при помощи специальных полей ввода) и передаёт их программе-обработчику на сервер.
Работу с формами можно разделить на два этапа:
Например:
В этом примере в окне браузера нарисуется форма с одним полем ввода и кнопкой "SUBMIT"
При нажатии на эту кнопку, форма возьмёт данные, введённые в поле ввода (input type="text"), создаст в глобальной PHP-переменной $_POST (так как атрибут method тега form имеет значение "post") элемент массива с индексом nam (так как атрибут name тега input имеет значение "nam") и присвоит этому элементу введённое в поле значение. После этого форма вызовет PHP-программу из файла с именем prog.php (так как action="prog.php").
Вызванной программе доступны все глобальные переменные, в том числе - массив $_POST и его элемент $_POST['nam'] , в котором и находится переданное формой значение.
PHP позволяет хранить части программного кода в различныхфйлах. Можно включать в программу на PHP различные фрагменты кода из других файлов.
Из программы на PHP можно работать с файлами и папками на диске сервера.
HTTP Cookies - это механизм хранения данных браузером компьютера клиента.
PHP содержит ряд функций для работы с cookies.
Sessions в PHP предназначены для созранения на сервере информации о сеансе связи с браузером клиента. Похоже на cookie, но информация зранится не на компьютере клиента, а на сервере.
Самый простой способ посылать почту из программы на PHP - функцмя mail().
Пример:
Но использование этой функции не всегда удобно и надёжно. Часто удобнее использовать другие билиотеки или классы для работы с электронной почтой из PHP.
Программа на языке PHP может быть написана с использованием разных подходов к программированию.
Первый подход - процедурное (procedural) программирование. В этом случае программа использует различные структыры данных (переменные, массивы, ...) и функции для их обработки.
Второй подход - объектно-ориентированное (Object Oriented) программирование. В этом случае внимание разработчика в первую очередь сосредоточено на функциональных блоках программы- объектах и их взаимодействии.
При использовании ООП сначала создаётся класс (шаблон для объекта). Класс отражает необходимый функционал для будущих объектов:
описывает данные, которые объект сможет использовать - свойства (properties),
возможные способы манипулирования будущим объектом - методы (methods).
Далее по этому шаблону (class) в программе создаются объекты. Каждый из этих объектов может использовать те свойства и методы, которые класс описал.
Например, если программа должна использовать электронную почту, то логично создать класс, имеющий свойства: ИМЯ_ПОЛУЧАТЕЛЯ, ИМЯ_ОТПРАВИТЕЛЯ, ТЕКСТ_СООБЩЕНИЯ и методы ПОСЛАТЬ_ПОЧТУ.
Объектно-ориентированное программирование во многих случаях упрощает создание программ со сложными логическими структурами. Такой подход позволяет больше абстагироваться от техники программирования и сосредоточиться на логика программы.
База данных представляет собой структурированную систему храниения и управления данными. Каждая база данных поддерживает один или несколько интерфейсов (API) для разных языков программирования, в том числе - для PHP. Эти библиотеки API предназначены для создания баз данных, доступа к ним, управления, поиска и репликации данных.
Для хранения данных могут быть использованы и другие способы. Например: файлы в файловой системе, таблицы в памяти. Но база данных предоставляет несравнимо больше возможностей для надёжной, быстрой и эффективной выборки и обработки больших массивов данных.
В настоящее время наиболее часто для хранения и управления больщими массивами информации используются реляционные системы управления базами данных (RDBMS Relational Database Management System). Все данные хранятся в разных таблицах и отношения между ними устанавливаются с использованием различного типа ключей.
MySQL - популярная система управления базами данных. Практически все языки программирования поддерживают API для работы с MySQL.
Самое популярное сочетание для WEB разработок - это язык программирования PHP и MySQL в качестве системы управления базами данных.
MySQL использует стандартные запросы языка SQL (Structured Query Language queries) для манипуляций с данными.
Основы.
Client Side HTML file
Server Side PHP file
Класс - это шаблон для объектов. Класс объединяет данные и функции, которые работают с данными, в одной структуре. Это блок кода, который описывает:
Класс может содержать собственные константы, переменные (называемые свойствами) и функции (называемые методами).
Когда создаётся объектно-ориентированное приложение, обычно создаете один или несколько классов, представляющих различные типы объектов в приложении. Например, если вы пишете приложение для форума, вы можете создавать классы под названием «Форум», «Тема», «Почта» и «Участник».
Объект - это особый тип переменной, созданный из класса. Он содержит фактические данные, и можно вызвать функции объекта для обработки этих данных. Можно создать столько объектов, сколько необходимо, из одного класса. Каждый объект функционирует независимо от других, даже если все они происходят из одного класса.
Можно сравнить класс с чертежом автомобиля. Он определяет, как машины, созданные из чертежа, будут выглядеть и вести себя, но это - абстрактная концепция.
Объект же подобен реальному автомобилю, созданному из чертежа. Он имеет реальные свойства (например: красный цвет), и реальные методы использования (например: «ускорить» и «тормозить»).
Объект реальная реализация класса (class instance).
Данные, которые содержатся в объекте, хранятся в специальных переменных, известных как свойства. Свойства объекта тесно привязаны к объекту. Хотя все объекты, созданные из данного класса, имеют одинаковые свойства, свойства одного объекта могут иметь значения, отличные от значений свойств другого объекта.
Функции, которые описаны в классе и используются в объекте, называются методами. Во многом они похожи на обычные функции - можно передавать им значения, они могут содержать локальные переменные, они могут возвращать значения.
Однако методы объекта обычно работают в основном со свойствами объекта. Например, метод login () для регистрации участника на форумах может установить для свойства loggedIn элемента значение true.
Описание класса начинается с ключевого слова class, затем следует имя класса, и блок операторов, заключённый в фигурные скобки. Он включает в себе определение свойств и методов этого класса.
Пример:
Псевдопеременная $this используется для ссылки на сам класс.
Запись $this->price - это обращение к переменной $price, описанной в этом классе.
Пример создания трёх разных объектов из этого класса.
Задание свойства price объекта $maths
Такой же эффект будет от вызова метода setPrice объекта $maths
Вызов метода setTitle объекта $physics
PHP позволяет использовать специальные типы методов: конструктор класса и деструктор класса.
Конструктор класса (метод __construct()) выполняется при инициализации объекта. Этот метод может выделить объекту некоторые ресурсы.
Деструктор класса (метод __destruct() ) используется для освобождения выделенных ресурсов.
Например:
Для свойств и методов класса PHP позволяет определять область видимости (public, protected или private).
Например:
или
Это область видимости, которая не имеет ограничений. То есть: свойства или методы public видны и могут использоваться в любом месте программного кода. Как внутри так и вне класса.
Этот уровень видимости присваивается по-умочанию, если не указан никакой другой.
Эти свойства и методы доступны только внутри класса или дочерних классов.
Эти свойства и методы доступны исключительно в этом классе.
Наследование классов - это возможность создавать новые (дочерние) классы на основании существующих. Дочерний класс при этом получает все свойства и методы родителя.
Дочерний класс может также описать новые свойства и методы в дополнение к полученнм от родителя.
Пример: