сложно ли выучить php с нуля
Как выучить PHP самостоятельно с нуля? Уроки и курсы для новичков
PHP – один из самых популярных языков в области веб-разработки. Если вы хотите заниматься созданием сайтов, он вам пригодится. В статье вы найдете пошаговый план обучения, список других технологий, которые нужны для работы, бесплатные уроки и советы для новичков.
Содержание:
Стоит ли учить PHP? Какие у него перспективы?
Это один из самых популярных языков для разработки сайтов. На нем написаны бесплатные системы управления (CMS), такие как WordPress, Joomla, Drupal, OpenCart и множество других, а также фреймворки Laravel, Yii2 и Symfony. Если вы хотите заниматься созданием сайтов и веб-приложений, учить PHP имеет смысл.
Сложно ли его освоить? На самом деле нет. Он относительно прост для новичков и востребован на рынке. Найти работу не проблема, так как вакансий – много. Если вы не знаете, нужно ли учить PHP, рекомендуем посмотреть следующий ролик:
Язык создал датский программист Расмус Лердорф. В 1994 году он написал набор скриптов, которые собирали статистику по просмотрам его резюме в интернете. Расмус назвал его PHP Tools (от Personal Home Page Tools – инструменты для персональных страниц). Постепенно набор расширялся. Первую официальную версию ПХП представили 8 июня 1995 года.
В 1997 году вышла вторая версия обработчика. В это время 1% всех сайтов в интернете использовали PHP – это около 50 тыс. ресурсов. Уже через год язык был установлен на 10% веб-серверов. Благодаря открытому коду, простоте и большому сообществу разработчиков популярность технологии быстро выросла.
Сейчас высказываются мнения, что PHP может терять позиции, поскольку сами сайты могут уйти в прошлое и уступить место приложениям. Однако пока эти опасения не подтверждаются, и технология по-прежнему востребована.
Зачем учить PHP: плюсы и минусы языка
Резюме: если вы хотите заниматься разработкой сайтов, то PHP – это популярный язык, который относительно просто освоить. Даже если вы раньше не занимались программированием. При этом вакансий на рынке много, и у хорошего разработчика не будет проблем с трудоустройством. Можно работать в веб-студиях или брать заказы на фрилансе.
За сколько времени можно выучить PHP с нуля?
Основы можно изучить в течение месяца. Вы освоите синтаксис, базовые команды и сможете писать простые программы. Однако для работы программистом этих знаний недостаточно.
Получить подготовку, необходимую для трудоустройства, можно на онлайн-курсах. Обычно они идут от 4 до 12 месяцев. Например, в Skillbox есть курс «PHP-разработчик», обучение на котором занимает 1 год. Если вы хотите выучить язык быстрее, то в Гикбрейнс есть курс по PHP продолжительностью 4 месяца. Его плюс – возможность стажировки и работы над реальными проектами.
Изучить основы языка можно по бесплатным урокам и курсам, размещенным на YouTube. О них расскажем ниже в статье.
С чего начать и как правильно учить PHP?
В таблице представлен план, по которому можно выучить язык самостоятельно с нуля. Начать рекомендуется с верстки, так как это азы, которые требуется знать. Освоив HTML и CSS, вы сможете быстрее изучить другие технологии.
1. Освоить HTML и CSS – чтобы уметь верстать макеты
Основные теги для верстки и их атрибуты, селекторы CSS, позиционирование элементов, оформление текстов, блочная модель, адаптивная верстка.
2. Изучить основы PHP
Синтаксис и основные команды, базовые операторы и функции, циклы, основы работы с объектами, файлами, формами, протокол HTTP, заголовки, куки, сессии.
3. Углубить знания PHP
Понятие класса и объекта, что такое наследование, полиморфизм, инкапсуляция, работа с базами данных My SQL, тестирование кода.
4. Узнать, как работает CMS (система управления сайтами)
Самые популярные – 1C Битрикс, WordPress. Можно освоить любую, которая вам понравится, т.к. изучив одну систему, вы сможете разобраться в других.
5. Посмотреть, как работают фреймворки на PHP, и изучить один из них
На выбор – Laravel или Symfony. Есть и другие, но перечисленные более популярны.
6. Получить дополнительные знания
Принципы ООП, MVC, система контроля версий Git, ОС Linux, работа в командной строке, планировщик cron, JavaScript.
Чтобы стать Junior PHP developer, достаточно знать HTML, CSS, PHP, базы данных MySQL, принципы ООП и MVC, систему контроля версий Git и популярную CMS на выбор. С таким багажом вас могут взять на работу в веб-студию. Для позиции Junior опыт работы может не требоваться. Главное знать ПХП и успешно пройти собеседование.
По мере набора опыта вы станете Middle PHP developer. Это программист с опытом работы от 2 лет, который участвовал в больших проектах, хорошо знает язык PHP и фреймворки, способен решать задачи средней сложности и работать самостоятельно без постоянного контроля со стороны старших коллег.
Уровень Senior предполагает экспертные знания в области программирования, владение широким стеком технологий, умение решать сложные задачи, управлять командой и опыт разработки от 5 лет. Зарплата такого специалиста может превышать 300 тыс. рублей в месяц.
Бесплатные курсы для новичков
Поскольку язык популярен, в интернете есть много бесплатных уроков, курсов и статей для новичков, которые позволяют выучить PHP самостоятельно с нуля. Большой популярностью пользуются мануалы, где за 1-1,5 часа рассказывают про синтаксис и основные команды. Одно из таких видео можно посмотреть ниже:
Также мы собрали для вас популярные курсы с YouTube, в том числе свежие (за 2020-2021 год). По ним можно учиться бесплатно:
Помимо видеороликов, в интернете есть много полезных сайтов для начинающих разработчиков. Они собраны в обзоре 24 сайта для изучения программирования на русском языке. Там вы найдете бесплатные справочники, сборники статей, мануалы, форумы и библиотеки.
Где учить PHP с нуля: обзор онлайн-курсов
В интернете есть онлайн-курсы, на которых обучают программированию, в том числе новичков. Вы получаете системную подготовку, осваиваете теорию и практику, общаетесь с преподавателями. После курсов можно искать работу или выполнять заказы на фрилансе. Примеры таких программ:
Курс в университете Нетология. Включает программу помощи с трудоустройством. Позволяет выучить PHP с нуля и освоить другие технологии в области веб-разработки: верстку, JavaScript и многое другое. Вы получите комплексную подготовку, необходимую для работы веб-программистом.
Курс в Skillbox, на котором изучают PHP, базы данных MySQL, фреймворк Symfony и CMS «1С Битрикс». Если вы хотите выучить только язык, это оптимальный выбор.
Курс на сайте Geekbrains. Уровень обучения – с нуля. Включает более 140 часов практики и прохождение стажировки в Geekbrains. В программе – основы программирования, верстка, изучение языка PHP и фреймворка Laravel.
Советы начинающим разработчикам
Новичку проще устроиться в небольшие веб-студии и стартапы. Там платят не самые большие зарплаты, зато дают возможность набрать опыта и в дальнейшем устроиться в более крупную компанию.
Мы рассказали, как быстро выучить PHP самостоятельно с нуля, где можно найти бесплатные курсы и уроки. Если вас интересуют вакансии в сфере ИТ, рекомендуем посмотреть обзор 36 сайтов для поиска удаленной работы.
PHP: с чего начать, как учить и что в итоге знать?
Введение
Ровно 2 месяца назад я спрашивал тут о том, как стать профессиональным веб-разработчиком за 7 лет (http://habrahabr.ru/qa/21830/). Сразу стало понятно, что без английского, с которым у меня все не очень гладко, не обойтись. За 2 месяца я подтянул свои знания английского на уровне чтения технической литературы, обзавелся маком и подтянул знания в html5.
К делу
Настало время изучения php. Хотя я его уже учил. Знаю типы данных, функции, mysql на уровне простых запросов, немного ооп и небольшую часть библиотеки GD2. Очень плохо с практикой, то есть не знаю как применять все это в деле. Я смогу написать очень простую систему регистрации с хранением данных в mysql базе; вход с помощью cookie и сессий; гостевую книгу и какой-нибудь простой поиск.
Вопросы
На первые несколько пунктов попробую написать рекомендации в свободной форме.
Первое и самое главное — чтобы хорошо изучить программирование на РНР, надо хорошо изучить программирование. Это очень важная вещь. Большая часть людей, пишущих на РНР, не имеют ни малейшего представления о программировании. Даже о таких базовых вещах, как форматирование кода, отладка, профайлинг, обработка ошибок, файловые операции. Можно заметить, что я не говорю об ООП. Это совсем отдельная тема, ООП надо учить специально. К сожалению, из 100 человек, которые говорят, что знают ООП, 90 являются банальными копипастерами, выучившими синтаксис, но не понимающими смысла объектов. Но чтобы играть в шахматы, недостаточно знать, как ходят фигуры.
Ещё неплохо бы ответить себе на вопрос — для чего ты хочешь выучить программирование на РНР? Вопрос совсем не праздный. Многие люди смешивают в нем кучу разных понятий. К примеру, здесь уже упоминали CMS. и действительно, если речь идёт о зарабатывании денег, то кастомизация Джюмлы и написание к ней говномодулей в финансовом плане куда более выгодны, чем умение писать что-либо с нуля. Для фриланса, во всяком случае.
Вариантов масса! поэтому нужно определиться сначала, чего хочется.
Там выше говорили про JS+CSS — не надо слушать, это полная ерунда. Фронтенд программирование — совсем отдельная вещь, куда больше визуальная, чем абстрактная. И, слава богу, все больше работодателей начинают понимать это. Хотя опять же — если фрилансишь и на все руки мастер — то без этого никуда.
Но если работать хардкорным серверным программистом в команде, то об HTML/JS/CSS нужно иметь только общее представление (поскольку тексты на этих языках являются, вообще-то, практически единственным результатом работы РНР).
А вот что обязательно нужно хорошо знать из сопутствующих технологий — это протокол НТТР, устройство файловой системы, работа c командной строкой в линуксе.
Теперь по остальным
Mysql всё ещё является краеугольным камнем хранения данных в вебе. Нужно знать и понимать джойны, индексы
Фреймворки — обязательно. Тут, правда, стоит проблема выбора, но принципиальной разницы между ними нет. Yii — неплохой выбор.
Гитхаб тебе не нужен, знать его не обязательно. Знать надо git.
А вот что является обязательным для веб-программиста — это умение пользоваться гуглем. Хотя бы на уровне умения скопипастить в поисковую форму сообщение об ошибке или написать вопрос «Что такое git» 😉
Потому что для работы в команде какую-либо систему контроля версий знать надо, а git является стандартом де-факто. Понимать принцип работы и базовые команды — чекаут, коммит, пуш.
Стоит ли смотреть в сторону PHP тому, кто решился только со второй попытки научиться прилично программировать?
Здравствуйте, друзья. С большой осторожностью касаюсь столь холиварной темы, но хочу рассказать свою небольшую историю о том, почему я, будучи уже далеко не в студенческом возрасте, решил всё-таки изучать программирование, и от чего же я собираюсь (о, боже) использовать для реализации своих намерений PHP. Буду рад получить от вас, коллеги по IT-индустрии, ценные советы и наставления.
Забегая вперёд скажу, что в комментариях к топику (кроме холиваров о языках) сказано много полезного. За что огромное спасибо хабровчанам.
Личный опыт
Моя карьера складывалась не самым типичным образом: я постоянно работал сразу в нескольких организациях и почти всегда на свободном графике. Почему меня всюду терпели? Похоже, что за универсальность: мог своими руками проложить сеть, настроить офисный сервер на Debian`е, мог в CorelDraw нарисовать аккуратную листовку, подготовив её к печати с цветоделением, мог обучать пожилых сотрудниц «входить в интернеты», мог нарисовать и сверстать шаблон для CMS и в одиночку за пару недель развернуть для компании небольшой сайт, мог чего-то по месту автоматизировать написанными на коленке программами, когда становилось ясно, что несколько рутинных операций в разы тормозят весь рабочий процесс отдела или конторы в целом. Мог и всё это делал.
Гордиться тут особо нечем, как вы понимаете, узкоспециализированным профессионалом ни в одной из затронутых отраслей я так и не стал, а стал этаким универсальным IT-многоборцем, человеком-окрестром среднего звена, который появляется и максимальную пользу приносит там, где в небольшом коллективе надо решить сразу много проблем. На жизнь, впрочем, вообще не жалуюсь, потому что некоторое время назад удалось запустить свою небольшую, но развивающуюся региональную веб-студию. И там я сам себе проджект-менеджер. Разрабатываем мы, в основном, на CMS Drupal и реже на фреймворке Yii, которые, как известно, на PHP писаны.
Сейчас мне, откровенно говоря, немного неловко управлять парой достойных программистов, чей JS и PHP код я понимаю лишь на 20%.
Университет и многие места работы научили меня основам трёх языков: C++, Java и PHP. Ну, как научили, я всего-то знаком с базовыми алгоритмическими конструкциями, могу отсортировать массив десятком методов (из-за курсовика, написанного по этой теме), понимаю как устроены стеки и очереди, на уровне концепций и учебных задач знаком с ООП. В общем, программированием владею как заурядный, но прилежный студент средненького технического вуза. Зато на практике почему-то меня всегда выручал именно PHP, притом заманивая своими самыми жжёными печеньками с тёмной стороны.
Я писал на PHP шелл-скрипты для коррекции длинных табличных отчётов через PHPExcel, парсил сайты без API сначала регулярками, а потом уж и с использованием phpQuery, быдлокодил (мешая вёрстку с логикой) веб-странички выводящие в интернет актуальные цены из локальной MSSQL-базы складской системы, мастерил всякие конвертеры из разряда «вот сюда вы неправильный файлик загрузите, а потом правильный по этой ссылочке скачаете и там уже сумма будет прописью». В общем, сколько бы я не заставлял себя использовать правильный язык и правильный подход при решении какой-то практической задачи, всегда всё скатывалось к тому, что решение, достаточно быстро и безобразно на уровне архитектуры (без всяких ООП и MVC), создавалось на PHP. При этом снаружи решение выглядело работоспособным и вело себя, увы, тоже как вполне работоспособное. Это всех устраивало, даже меня, потому что придаваться рефлексии и проклинать себя за несоблюдение эстетики — было некогда.
А вот сейчас я решил, что пора остепениться. Мне уже не стать профессиональным программистом, но до уровня junior`а с правильно поставленными мыслями и руками мне бы очень хотелось дойти. Немного времени у меня для самообучения есть, а, главное, я уже умею заставлять себя делать нечто ре-гу-ляр-но, что должно положительно сказаться на образовательном процессе. При этом, я так благодарен много раз выручавшему меня PHP, что хочу теперь по-правильному освоить именно его. Не верю я, что отсутствие строгой типизации, может мне испортить вторую попытку.
Но с чего заново начать, чтобы расти правильным программистом? Вот этого я — не знаю. По PHP я вообще не читал книжек, а учился по коду из статей с комментариями, разбросанному в сети. По Java помню книжку, которая мне понравилась — её автор Хабибуллин. Но эта книжка не учит стилю и правильным подходам, хотя и доступно знакомит с языком и платформой. И книжка не про PHP.
Что делать?
Какой диагноз поставите, коллеги? Можно ли вообще, по вашему мнению, переучиться программировать или, торопясь побыстрее решать рутинные задачи, я бесповоротно сам себя заклеймил на роль вечного «похапэшного быдлокодера»?
Какие первые шаги, по вашему, мне теперь стоило бы совершить: что почитать, какие практические задачи решить, какие табу себе поставить?
P.S. И, чтобы два раза не вставать, задам уж совсем, наверное, смешной вопрос: какую IDE вы посоветуете использовать? Я, стыдно признаться, все мегабайты своего кода написал в PSPad и протестировал в браузере кнопочкой F5, читая про ошибки и нотисы и возвращаясь снова их исправлять в редактор. А как и в чём отладку ведут правильные программисты?
P.P.S. Проще лечить больного по известным симптомам, поэтому, пожалуй, приведу несколько примеров, иллюстрирующих бардак в моей голове. Задам некоторые глупые вопросы, не дающие мне покоя:
1. Приведите минимальный пример, который иллюстрирует модель MVC, так чтобы были видны практические профиты от её применения?
2. Говорят: пишите безопасный код. Но каковы базовые правила? Я, например, понимаю, что если то, что пришло через GET или POST без проверки и обработки отправлять в SQL запрос, то быть беде. Но какие ещё бывают типовые косяки в безопасности, которых стоит сразу же бояться и не допускать как SQL-инъекций?
3. Я встречал несколько разных гайдов по форматированию кода. Они порой постулируют противоречивые вещи. Есть ли где-то хотя бы один русскоязычный гайд, где для каждого пункта приводилось бы пояснение в духе «надо оформлять вот так, потому что это решает такие-то проблемы»?
Промежуточные результаты
В комментариях Juraseg посоветовал «Совершенный код» Стива Макконнелла и сразу несколько человек посоветовали «PHP Objects, Patterns and Practices». К сожалению, английский мой слаб, поэтому буду читать перевод.
Cord дал ссылки на конкретные русскоязычные статьи и даже поделился собственной программой «занятий», по которой готовит свою команду.
Многие люто рекомендуют и поддерживают JetBrains PHP Storm в качестве самой правильной IDE для PHP.
Также многие пишут, что раз у меня и без идейно верного владения программированием всё сложилось, то нечего гневить судьбу, надо продолжать заниматься тем, чем занимаюсь, раскачивая менеджерские скиллы.
Ну, и, многие советуют таки забить на PHP и смотреть в сторону других языков, в основном, в сторону Python. На эту тему понравился философский комментарий от LayneBuchyn о том, что для того, чтобы толсто троллить объективно критиковать PHP, надо отлично знать PHP.
За какой период времени можно выучить PHP до уровня совершенства?
Всё зависит от способностей.
Лучше всего об этом расскажет анекдот:
У студента ПТУ спрашивают: «сколько нужно времени, что бы выучить китайский язык?»
— ну, наверно, года два.
У студента МГУ спрашивают: «сколько нужно времени, что бы выучить китайский язык?»
— ну, наверно, месяц.
У курсанта военной академии спрашивают: «сколько нужно времени, что бы выучить китайский язык?»
— сейчас бляху дочищу и пойду сдавать!
До уровня совершенства примерно бесконечность. У меня лет 5 практического опыта, но я бы не сказал, что знаю в «совершенстве».
Для того, что бы написать «hello world» минут 20
а дальше от желания.
Плюс надо учитывать, что PHP никогда сам по себе не бывает. К нему необходимы ещё : Html, JavaScript, SQL и знания, как работает Apache, и довольно хорошо при этом разбираться в Linux.
Так же в нынешних реалиях, некоторые вещи лучше обрабатывать на FrontEnd(JavaScript), а некоторые на BackEnd(PHP, Perl, Python, Rubi).
«Так что идите таварищь Жюков и подумайте»
🐘 Самоучитель для начинающих: как освоить PHP с нуля за 30 минут?
PHP (от англ. препроцессор гипертекста) – язык программирования общего назначения, широко используемый в веб-разработке. Сценарии PHP можно внедрять непосредственно в код HTML. В этой статье мы пройдемся по основам программирования на PHP: синтаксису, объявлению переменных, массивам, условным операторам, циклам и функциям. Также запустим двумя способами веб-сервер на локальной машине и соберем страничку из нескольких файлов PHP и фреймворка Bootstrap. В конце статьи приведем список литературы и бесплатные курсы по PHP для новичков.
Редакторы кода
Для удобного кодинга нам понадобится редактор кода (IDE). Популярные:
Как запустить PHP в Atom
Устанавливать PHP на компьютер и запускать веб-сервер мы будем в конце статьи в разделе «Собираем HTML-страницу». А пока для запуска PHP-сценариев достаточно добавить плагин Script в редакторе Atom.
Рис. 1. Запуск php-скрипта в редакторе Atom
1. Синтаксис
Выведем на экран строку Hello World (заключена в кавычки) с помощью команды echo :
через функцию print :
через функцию printf (выводит отформатированную строку):
2. Объявление переменной
Выведем на экран переменную animal :
Одно значение можно присвоить нескольким переменным:
Комментарии
3. Типы данных
3.1. Строки
Строка – набор символов, заключенный в одиночные » или двойные кавычки «» :
Конкатенация строк
3.2. Числа
Целое число (integer) не имеет дробной части:
Число с плавающей точкой
Число с плавающей точкой имеет дробную часть и задается следующий образом:
Арифметические операторы
Оператор | Операция |
+ | Сложение |
— | Вычитание |
* | Умножение |
/ | Деление |
% | Деление по модулю |
** | Возведение в степень |
Таблица 1. Арифметические операторы
Операторы сравнения
Чтобы сравнить значения используют операторы сравнения, которые возвращают true или false :
Если строка не содержит число, то интерпретатор PHP приводит значение строки к 0. Если в строке есть число и оно стоит после буквенных символов, то значение всей строки также приводится к 0. Е сли число стоит перед буквенными символами, то для сравнении берется только число.
Таблица 2. Операторы сравнения
Порядок операций
Сначала считается выражение в скобках:
4. Условный оператор if-else
Оператор if выполняет код, если выполняется условие. В противном случае выполняется код после else, который переводится, как «иначе», «в другом случае».
Синтаксис оператора if-else
Напишем несколько условий с оператором if и if-else :
для проверки дополнительных условий используется оператор elseif :
Таблица 3. Логические операторы
5. Тернарный оператор
Тернарный оператор сокращает запись проверяемого условия и имеет следующий синтаксис:
6. Переключатель switch
Синтаксис переключателя switch
Напишем конструкцию из переключателя switch и двух операторов case :
7. Цикл while
Оператор while выполняет код до тех пор, пока значение условия не станет ложным.
Синтаксис цикла while
while – обозначение цикла.
$m – условие, которое проверяется перед началом цикла.
$m++ – инкрементирование, то есть увеличение переменной на единицу.
Другой способ записи с помощью декремента в условии:
8. Цикл do..while
Синтаксис цикла do..while
Напишем цикл, выводящий на экран четыре раза слово Hello :
9. Цикл for
Цикл выполняется, до тех пор, пока условие истинно, то есть значение i не станет равным 4:
10. Цикл foreach
Цикл foreach последовательно перебирает элементы массива.
Синтаксис цикла foreach
На каждой итерации переменной присваивается значение текущего элемента последовательности. Переберем все элементы массива и умножим каждый элемент на 3:
11. Массивы
Массивы – упорядоченная коллекция элементов с доступом по индексу или ключу. Индексный массив создается двумя способами:
Через функцию array() :
и через квадратные скобки []:
Рекомендуется объявлять массив через квадратные скобки, так как эта запись компактнее.
Создадим пустой массив:
Добавим в него несколько элементов и выведем на экран его содержимое:
Для удаления элемента из массива воспользуемся функцией unset() :
unset($array[2]) – удаление третьего элемента массива.
В качестве индекса также используют строки:
В таком случае мы получаем что-то напоминающее словари в других языках программирования с ключами и значениями. В PHP такой массив называют ассоциативным.
Ассоциативный массив объявляется через символы => :
Создадим ассоциативный массив:
Для поиска ключа по значению используем функцию array_search():
Чтобы подсчитать количество элементов в массиве воспользуемся функцией count() :
Также можно создать многомерный массив:
12. Функции
Функция – подпрограмма, которая на входе принимает аргументы (бывают функции без входных аргументов), выполняет код и возвращает результат. Функциональное программирование упрощает жизнь программиста, так как не нужно копировать и вставлять фрагменты кода снова и снова. Достаточно обратиться к функции когда нужно и сколько угодно раз.
Как объявить функцию
function – мы говорим интерпретатору, что отсюда начинается функция.
аргументФункции – переменные, которые передаются функции для выполнения кода.
имяФункции – чтобы вызывать функцию, ей нужно присвоить имя.
return – выдает результат работы функции.
Аргументы функций
До этого мы рассматривали функции без аргументов – переменных, которые функция получает извне. Напишем функцию с аргументами, которая считает сумму трех чисел:
13. Собираем HTML-страницу
Чтобы просмотреть HTML-страницу, собранную из нескольких PHP-файлов, установим и запустим веб-сервер, разместим файлы в определенной папке и обратимся к файлу через браузер.
Запуск веб-сервера
Веб-сервер можно запустить несколькими способами:
Встроенный в PHP веб-сервер
Инструкция для Windows:
Инструкция для Ubuntu:
Чтобы проверить запущен ли сервер, перейдем по адресу http://localhost:8000/:
Рис. 6. Запуск встроенного в PHP веб-сервера
Если мы получили ошибку 404, значит сервер запущен.
XAMPP
Рис. 7. Запуск сервера с помощью XAMPP
Рис. 8. Запуск сервера с помощью XAMPP на Windows
14. Собираем страничку
Структура простого HTML-документа выглядит следующим образом:
Воспользуемся фреймворком Bootstrap, чтобы ускорить создание странички. Скачивать ничего не нужно, просто вставим ссылку на Bootstrap в тег :
Откроем файл header.php и вставим в него следующий код:
Рис. 9. HTML-страница, собранная из php-файлов
Литература
Шпаргалки
YouTube-каналы и курсы
Бесплатные курсы на русском языке: