- 🐘 Самоучитель для начинающих: как освоить PHP с нуля за 30 минут?
- Редакторы кода
- Как запустить PHP в Atom
- 1. Синтаксис
- 2. Объявление переменной
- Комментарии
- 3. Типы данных
- 3.1. Строки
- Конкатенация строк
- 3.2. Числа
- Число с плавающей точкой
- Арифметические операторы
- Операторы сравнения
- Порядок операций
- 4. Условный оператор if-else
- 5. Тернарный оператор
- 6. Переключатель switch
- 7. Цикл while
- 8. Цикл do..while
- 9. Цикл for
- 10. Цикл foreach
- 11. Массивы
- 12. Функции
- Как объявить функцию
- Аргументы функций
- 13. Собираем HTML-страницу
- Запуск веб-сервера
- Встроенный в PHP веб-сервер
- XAMPP
- 14. Собираем страничку
- Литература
- Шпаргалки
- YouTube-каналы и курсы
- PHP с нуля. Урок 1
- Основы синтаксиса:
- Урок 1. Создание первого скрипта
- Как ненадо писать Hello World:
- Завершение.
- О песочнице
- О модерации
- Уроки PHP
- Уроки PHP для начинающих / #1 – Введение в язык PHP. Что такое PHP и как с ним работать?
- Видеоурок
- Базовое представление о PHP
- Что значит «серверный язык»?
- Советы начинающим программистам
- Хейт и будущее языка ПХП
- План курса
- Дополнительные курсы
- Основы работы с PHP
- Учебник PHP
- Практика
- Важное
- Регулярки
- Работа с htaccess
- Файлы, папки
- Сессии и куки
- Работа с БД
- Практика по работе с БД в PHP
- Практика
- Движок PHP
- Продвинутые БД
- Аутентификация
- Практика
- ООП и MVC
- Абстрактные классы и интерфейсы
- Трейты
- ООП Магия
- Практика
- Практика: классы как набор методов
- Строки и числа
- Переменные
- Операция присваивания
- Комментарии
- Функции
- Функция echo
- Математические операции
- Специальные значения
- Значения true, false
- Значение null
- Функция var_dump
- PHP внутри HTML
- Сложение строк в PHP
- Получение определенного символа строки
- Сложности с операцией присваивания
- Операции инкремента и декремента
- Типизация переменных
- Что вам делать дальше:
- Изучить программирование на PHP. Вводная
🐘 Самоучитель для начинающих: как освоить 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-каналы и курсы
Бесплатные курсы на русском языке:
PHP с нуля. Урок 1
PHP ( PHP: Hypertext Preprocessor, задумчивый препроцессор
гипертекста) — скриптовый язык программирования, oриентированный на web.
B 1 yрокe познакомимся с основным синтаксисом, а так же напишем свой первый скрипт.
Основы синтаксиса:
—
— начало и конец скрипта
оператор присваивания — =
— Вывод текстовой информации — echo (может выводить html-код)
Урок 1. Создание первого скрипта
Как вы видите скрипт состоит из одной строчки.
Что бы выполнить скрипт необходимо соответствующее ПО, для пользователей Windows я рекомендую Denwer (http://denwer.ru)
После установки Denwera создаем в каталоге hosts папку Script.test, в которой в свою очередь создаем папку
WWW. В папке WWW создаем файл index.php? в который переносим содержимое нашего файла.
После сохранения файла перезапустите Denwer. Затем в строке браузера наберите script.test
И вауля! Мы видем надпись Hello World!
Как ненадо писать Hello World:
Hello World Не пишется так
Ну уж точно не так:
Завершение.
На этом наш урок подошел к концу, ну а в завершении небольшая подборка полезных ссылок:
denwer.ru — сайт откуда можно скачать Denwer
ru.wikipedia.org/wiki/PHP — Что такое PHP
http;//php.net — самоучитель по PHP
О песочнице
Это «Песочница» — раздел, в который попадают дебютные посты пользователей, желающих стать полноправными участниками сообщества.
Если у вас есть приглашение, отправьте его автору понравившейся публикации — тогда её смогут прочитать и обсудить все остальные пользователи Хабра.
Чтобы исключить предвзятость при оценке, все публикации анонимны, псевдонимы показываются случайным образом.
О модерации
Не надо пропускать:
Уроки PHP
Уроки PHP для начинающих / #1 – Введение в язык PHP. Что такое PHP и как с ним работать?
Видеоурок
Полезные ссылки:
Вначале пути по освоению PHP нужно познакомиться с теорией и определениями. Первоочередной вопрос, что собой представляет PHP?
Базовое представление о PHP
PHP – это аббревиатура от «Hypertext Preprocessor». Корни синтаксиса уходят глубоко в C, Java и Perl. Язык довольно легко даётся в изучение. Главным его преимуществом является быстрый и простой доступ к генерированию веб-страниц. Ещё одно важное достоинство PHP в сравнении с Perl или C – это блоки PHP-кода, которые можно внедрять прямо в документ с HTML.
Язык PHP впервые появился в 1995 году и с тех пор является одним из лидером на рынке веб технологий. PHP является серверным языком программирования, что используется зачастую в веб проектах для обеспечения серверного функционала.
Основным преимуществом языка является его простота изучения, а также легкость применения. На основе PHP реально создавать высокопроизводительные и нагруженные веб-приложения в сжатые сроки. Готовые продукты несложно редактировать, улучшать и поддерживать.
Отличительная черта языка заключается в том, что он обрабатывается на стороне сервера. При помощи нехитрых действий можно создать такой код, что автоматически создаёт страницу, ничем не отличающуюся от чистого HTML-кода. Пользователь не сможет догадаться что перед ним обычный HTML или результат работы PHP.
PHP один из тех языков, с которых можно начинать путь программиста. Несмотря на лёгкость освоения, язык очень функционален, он готов выполнять даже сложные задачи. Даже если вы не знаете ничего о PHP и программировании в целом, особого труда с освоением возникнуть не должно. Нет сомнений, что уже спустя пару часов изучения PHP вы научитесь создавать первые скрипты.
PHP относится к тем языкам, что регулярно улучшаются и развиваются. Он точно будет занимать лидирующие места в сфере веба ещё достаточно долго. Ближайшие 10-15 лет программисты на PHP будут востребованы.
Что значит «серверный язык»?
Язык PHP ценят за мощность и гибкость. Он выступает связующим звеном между клиентом и базой данных, а также выполняет базовую обработку всех входных параметров от пользователя. Всё это стало возможным благодаря работе скриптов на стороне сервера.
Серверные языки умеют работать с базами данных, сессиями, обработкой форм, получением информации о пользователе: его операционная система, браузер и т. д. Сегодня создание современного сайта без использования серверного функционала не является чем-то разумным. Практически любой веб сайт требует наличие базы данных, к примеру, для хранения информации о пользователях. Работать с БД на основе лишь языка JavaScript было бы невозможно, ведь JS по своей сути является клиентским языком (в расчет не берем платформу Node JS).
Практическая сторона вопроса:
Советы начинающим программистам
Хейт и будущее языка ПХП
Возможно, перед изучением PHP вы уже слышали плохие отзывы относительно языка. Они связаны с тем, что PHP хоть и хороший язык, но не универсальный. К примеру, поддержка крупных, высоконагруженных веб-сайтов на PHP осуществляется хуже, нежели на том же Node JS.
В ближайшие годы и даже десятилетия язык никуда не исчезнет и по прежнему будет стоящим для изучения языком. К тому же, язык постоянно обновляется и, возможно, вскоре он заберет еще больший процент на рынке.
По большей степени его хейтят из-за того, что он слишком большой и есть огромное сообщество. В нем находятся как почитатели, так и хейтеры. В любом случае, начав изучение PHP вы не прогадаете.
Вот вам небольшой список сайтов, что написаны на PHP. Среди них:
План курса
В ходе уроков «Курс PHP обучение для новичков с нуля» мы с вами рассмотрим язык PHP. Научимся работать с основными концепциями: с переменными, циклами, условиями и прочими конструкциями. Также мы научимся работать с пользователем: обрабатывать формы, отправлять почту, подключать файлы, выполнять настройку сервера и многое другое.
PHP программирование достаточно простой процесс, который может освоить даже чайник. Наш PHP курс рассчитан на новичков и подойдет каждому для обучения PHP с нуля.
Дополнительные курсы
Расскажите что из себя представляет язык PHP. Какие задачи он выполняет и для чего он служит?
Основы работы с PHP
Учебник PHP
Практика
Важное
Регулярки
Работа с htaccess
Файлы, папки
Сессии и куки
Работа с БД
Практика по работе с БД в PHP
Перед чтением см. новые уроки раздела «Важное», которые появились выше.
Практика
Движок PHP
Продвинутые БД
Аутентификация
Практика
ООП и MVC
Абстрактные классы и интерфейсы
Трейты
ООП Магия
Практика
Практика: классы как набор методов
В этом уроке мы разберем работу с данными на языке PHP.
Строки и числа
Самыми простыми типами данных в PHP являются строки и числа.
Переменные
Одним из самых главных и распространенных объектов в программировании является переменная.
Имя переменной должно состоять из английских букв: больших или маленьких, а также цифр и знака_подчеркивания.
В PHP перед переменной обязательно должен быть написан знак доллара $:
Операция присваивания
Очень важным элементом программирования является операция присваивания.
С помощью присваивания мы можем положить в переменную результат какой-либо операции, например, строку или число, а затем достать эти данные в нужном нам месте и воспользоваться ими.
Комментарии
К коде PHP, так же, как и в HTML и CSS, можно оставлять комментарии, которые будут проигнорированы PHP при выполнении программы.
Их обычно используют для того, чтобы оставлять какие-либо пометки в коде или временно убрать какие-то строки кода, которые вам мешают, а потом иметь возможность быстро их вернуть обратно.
Комментарии могут быть многострочными и однострочными:
Функции
В программировании есть такое понятие, как функции. В отличии от переменных, которые хранят внутри себя некоторые данные, функции выполняют операции над этими данными.
Функция отличается от переменной тем, что перед именем функции не ставится знак доллара (он нужен только для переменных), а также тем, что у нее после названия стоят круглые скобки ( ), внутри которых через запятую можно перечислять параметры.
Например, в PHP есть стандартная функция sqrt(), которая параметром принимает число, а возвращает квадратный корень этого числа.
Давайте найдем корень из 25 и запишем в переменную $a:
Функция echo
В PHP существует специальная функция echo, которая позволяет вывести какой-либо текст в окно браузера. В отличие от других функций, после echo не требуются круглые скобки ().
Следующий код выводит на экран заданный текст:
А в следующим коде переменной $text присваивается фраза, а затем содержимое этой переменной выводится на экран:
Математические операции
Чтобы понять, как с ними работать, посмотрите на следующий пример:
Можно сначала записать числа в переменные, а потом уже проводить операции с переменными:
А можно также одновременно производить операции и с числами, и с переменными:
Специальные значения
В PHP, как и в других языках программирования, существуют ключевые слова для некоторых специальных значений.
Значения true, false
К примеру, на вопрос ‘вам уже есть 18 лет?’ в можете ответить да, то есть true, или нет, то есть false.
Эти значения называются логическими.
Значение null
Функция var_dump
Бывают ситуации, когда нам нужно посмотреть содержимое переменной, чтобы понять, почему наш код работает не так, как мы хотели. Обычно на помощь приходит функция echo, однако, бывают ситуации, когда echo не работает.
Например, если переменная является пустой строкой », то выведя ее содержимое на экран с помощью echo, мы ничего не увидим.
Для решения описанных выше проблем следует использовать функцию var_dump(), которая предназначена для отладки кода и позволяет выводить значения переменных и их тип.
С помощью этой функции мы можем увидеть, что переменная пуста, можем подсчитать количество пробелов по краям строки, можем увидеть, что переменная логическая и имеет значение true или false (об этих значениях чуть позже).
Пример использования var_dump():
PHP внутри HTML
PHP код можно вставлять внутрь HTML кода:
Сложение строк в PHP
В PHP, в отличие от многих других языков, строки складываются с помощью знака «точка»:
Получение определенного символа строки
В PHP можно получить доступ к определенному символу строки по его номеру таким образом: $a[n] – n-ный символ строки (учтите, что нумерация идет с нуля):
Сложности с операцией присваивания
Очень часто новички не понимают, что присваивание отличается от обычного равенства. Посмотрите следующий пример:
Операции инкремента и декремента
Операция $a++ или ++$a – увеличивает переменную $a на единицу. Эта операция называется инкремент.
Операция $a— или —$a – уменьшает переменную $a на единицу. Эта операция называется декремент.
Давайте посмотрим, в каких случаях проявляется разница между ++a и a++.
Пусть у нас есть код echo ++a и код echo a++.
Мы уже рассматривали код, который демонстрирует сложности с операцией присваивания:
В данном случае мы присваиваем переменной $a ее текущее значение, увеличенное на 2. Однако PHP позволяет записать этот код еще короче с помощью оператора +=:
Существует также операция .=:
Типизация переменных
Что будет, если попробовать сложить, к примеру, число и строку, вот так: 3+’3′? В результате вы получите число 6. Это значит, что PHP автоматически осуществляет преобразование типов при необходимости, вам не нужно за это переживать.
Что вам делать дальше:
Приступайте к решению задач по следующей ссылке: задачи к уроку.
Изучить программирование на PHP. Вводная
Основная задача программирования — заставить компьютер выполнять определенные и нужные программисту действия. Поэтому, наша первая программа будет выглядеть так:
— говорит нам о том, что дальше будет код на языке PHP. Все наши программы, написанные на php мы будем в обязательном порядке начинать с этой строчки. Иначе PHP просто пройдет мимо, даже не подозревая, какую важную задачу мы пытаемся на него возложить.
Поехали дальше.
Вторая строка:
Первое слово, которое мы встречаем в этой строке — слово «me», на основании чего делаем вывод, что разговор тут идет о создателе данной программы. Доллар перед словом означает, что данная последовательность символов обретает свой смысл в виде переменной.
Что же такое переменная? Переменная — это место, где хранятся наши данные, а для удобства обращения, мы даем имя этой части памяти.
Если у нас есть выделенная память, то глупо ее оставлять пустой, верно? Поэтому следующим символом «=» мы говорим компьютеру, что в это место, которое мы только что создали нужно записать данные, фактически присваивая переменной какое-то значение. Поэтому данный символ называется не «равно», как мы привыкли в математике, а «оператор присваивания».
Прежде чем продолжить, хотелось сказать пару слов про лексику, которой пользуются программисты. Людям не посвященным, мир программистов кажется странным. Ведь нам ничего не стоит сделать фабрику мостов, а стринги разложить на чары. Но, как и все в программировании, лексика подчиняется логике, и имеет вполне определенную смысловую нагрузку. А еще чтение вслух программ на PHP способно призывать дух Черно-белого верблюда, который будет говорить что-то про «шаблонизатор».
Как вы догадались, речь пойдет о довольно знакомом для слуха слове «оператор». Чаще всего слово «оператор» применяется рядом с названиями техники, требующей определенных знаний и умений для работы с ней. Фактически, оператор — это кто-то, кто выполняет определенные действия, следуя задачам, поставленными начальством. Но в программе нет живых людей, способных выполнить за нас работу, а программист — единственный и бессменный тут начальник. Поэтому, когда мы говорим об «операторах» в программе, мы имеем в виду что-то, что делает для нас определенные действия. Это простейшие приказы или указания, которые компьютер выполнит в точности, как это описано в документации. Ну или не выполнит, если обиделся, устал и хочет мороженку.
Поэтому, для программистов «+» — это не «плюс», а «оператор сложения», «-» — «оператор вычитания», «*» — «оператор умножения», а «\» — оператор деления. Конечно, этот список операторов далеко не полный, но смысл остается тот же — «оператор» — это что-то, что совершает определенные действия (у программистов называется «совершает операцию») над исходными данными, которые называются операндами.
Говоря языком программирования —
Подобно математическим уравнениям, мы можем комбинировать операторы вместе.
Например,
printReport «, то скорее всего функция печатает отчет, а если написано » eatCat «, то функция отправит вашего кота есть. Или съест вашего кота.
Возвращаясь к нашему коду —
Судя по названию, делает счастливым, а судя по списку операндов, делает счастливым программиста, создавшего ее. Данная программа является универсальным личным генератором счастья. На этом я заканчиваю рассказ о программировании — ведь теперь у вас есть универсальный способ доставить счастье кому угодно. Заказчику, начальнику и самому себе конечно. Все. Занавес, выключаем рубильник и расходимся.
Что, что простите? Функция не определена. Ой, извините, забыл маленькую деталь.
Прежде чем компьютер принесет вам счастье, вы должны научить его это делать. Как? С помощью магии, конечно! Магии программирования — так что одеваем черные плащи, берем в руки клавиатуру, учебник латыни и вперед — к созданию личных генераторов счастья. И хватит уже на сегодня — полнолуние, и у меня запланирован интересный вечер в компании старых блудниц.