что нужно для начала работы с php
Доброго времени суток, уважаемые читатели блога Site on! Вот и пришло время познакомиться нам с таким чудесным языком программирования как PHP, который, в свою очередь, специально заточен под наши нужды, то есть – для веб-разработки. На самом деле в нём нет ничего сложного. Всё, что вам потребуется – это ваше желание, свободное время и не забыть подписаться на выход новых статей, в которых я постараюсь доступным языком, шаг за шагом рассказать об успешном создании сайтов на PHP.
PHP (Hypertext Preprocessor) – это скриптовый (встраиваемый) язык программирования, который служит инструментом для придания динамики нашим с вами сайтам, а также для автоматизации множества процессов. Именно благодаря PHP, который является свободно (бесплатно) распространяемым, и были созданы все современные CMS (системы управления контентом): Joomla, WordPress, Monstra, OpenCart, Drupal, DataLife Engine (DLE) и так далее. Собственно говоря в этом и заключается суть данного курса раздела – в том, что без знания PHP вы просто банально не сможете произвести тонкую настройку CMS под ваши нужды, не говоря уже о создании действительно успешных и стоящих веб-проектов. С мотивацией разобрались? Пойдёмте дальше.
Как выглядит PHP код?
У меня при открытии данной страницы вместо текста на русском языке получилось вот что:
Что нужно сделать, чтобы этого избежать я очень подробно описал в статье о том, как правильно задать кодировку для сайта на Joomla и других CMS. Вот что у меня получилось, после действий описанных по ссылке:
Как работает PHP?
Что нужно для начала работы с PHP?
После установки Денвера вы будете обладать всем необходимым ПО (программным обеспечением), которое нужно для разработки сайтов на PHP, а также для установки и использования любой CMS (Joomla, WordPress и тд.).
Также подразумевается, что у вас уже есть хотя бы базовые познания в области HTML + CSS, а, следовательно, вы уже успели хотя бы чуть-чуть поработать с такими инструментами для разработки сайтов как веб-инспекторы и уж точно знаете из чего состоит сайт. Ещё стоит отметить, что работу PHP разработчика может заметным образом облегчить правильно подобранный редактор кода, в котором вы быстро освоитесь и будете использовать все встроенные возможности редактора по максимуму и с наибольшим КПД. Примером такого редактора, кстати, абсолютно бесплатного, может послужить Sublime Text 2. Перейдя по ссылке, вы можете прочитать о нём обзорную статью и научиться некоторым тонкостям работы.
Начало работы с PHP на Денвере
Запустить такой файл простым перетягиванием в браузер, как мы делали это раньше, не получится. Сначала нам нужно не забыть сделать двойной клик по «Start Denwer», чтобы запустить наш веб-сервер Apache, а затем в адресную строку браузера ввести следующий url:
Где каталог blog2 – это та самая папка с произвольным названием для вашего сайта (измените на свою).
Получилось? Тогда рад вас поздравить, вы только что создали свою первую веб-страницу с PHP вставками. На сегодня всё, в следующих статьях мы начнём уже подробное изучение скриптового языка программирования – PHP.
Что должен знать начинающий PHP разработчик
Хотел было написать очередную статью о собеседованиях, но мне кажется формат себя изжил, так что читаем и мотаем на ус.
Фундамент
Соображать и использовать Google. Первое оценить сложно, для этого придумано много «дурацких» вопросов для собеседований. Второй пункт либо прививается в первые дни испытательного срока, либо разработчик владеет им изначально, иной вариант никто не рассматривает…
Общепознавательное
Я таки опять возвращаюсь к собеседованиям, и манит меня прям
Из чего состоит HTTP запрос/ответ (да откройте же firebug или что у вас там установлено и посмотрите)
Установка связки Apache+PHP+MySQL — потренируйтесь, это ой как надо.
Таки немного о linux — о различиях файловых систем в сравнении с windows, о раздаче прав (chmod) и как выйти из vi без сохранения.
Пару-тройку дней потребуется на усвоение базовых знаний.
Основы основ — получение и обработка входящих параметров.
Работа с циклами, массивами и строками. И да, простенькое задание с собеседования (пора угомониться):
Работа с базой данных и с файлами. Для усвоения материала — вот вам задание: написать анонимную доску объявлений (с блек. аплоадом картинок)
Должны знать как работает механизм сессий — т.е. что происходит от момента вызова session_start, и каким боком это всё связано с cookies (помните я говорил о HTTP?).
Знать для чего служит include, require и какая между ними разница.
Разницу между echo и print не только знать, но и понимать.
Таки научиться работать с объектами, понимать разницу между абстрактным классом и интерфейсом.
Знать и использовать namespace.
Отдельно стоит упомянуть о гигиене кода — необходимо соблюдать стандарты кодирования, из множества существующих рекомендую стандарты кодирования Zend Framework’а
Чем больше опыта, тем лучше, но основы вы подтяните за неделю, ОПП потребует еще недельку.
Основы синтаксиса SQL. Немного вникнуть в MySQL и понимать различия между MyISAM и InnoDB.
Знать как работают LEFT/RIGHT/INNER JOIN’ы — наглядно в статье Visual Representation of SQL Joins (ссылка на картинку для ленивых — Visual_SQL_JOINS_orig.jpg O_o)
Переделать БД, т.к. в библиотеке зачастую больше, чем один экземпляр книги, а надо знать какой именно экземпляр брал посетитель.
Сосредоточенного изучения в течении недели вам хватит.
HTML и CSS
Сверстайте пару страниц, от и до (HTML должен быть валидным). Не слушайте, что это работа дизайнера/верстальщика/кого-то еще. Поверьте моему опыту — вам отдадут свёрстанную страницу, никто за вас не будет интегрировать HTML шаблон в вашу систему, так что знание HTML и CSS в обязательном порядке.
Забудьте о том, что Smarty создан для верстальщиков, и они вам будут готовые шаблоны отдавать — это сказки. О Smarty тоже забудьте, хотя нет — иметь представление что это такое конечно надо, а вот использовать — нет.
Должны понимать CSS следующего содержания:
Узнать что есть блочная модель, да как работает float. Что есть margin и padding.
Дней пять вам хватит для освоения базовых навыков верстальщика.
JavaScript
Знать: синтаксис, о том как работают события, понимать что такое замыкание, и как работает AJAX. Рекомендую прочитать учебник Ильи Кантора. Это немного, изучение данных вопросов у вас не займет больше недели.
Далее прочитайте первые шесть частей из моей серии «jQuery для начинающих» — это еще пару-тройку дней на усвоение материала.
Еще чуть-чуть напрягов
Понимание шаблона MVC. Знакомство с каким-нить фреймворком (Zend Framework, Symfony, Yii, и т.д.). Можно пройти Quick Start от Zend Framework’а.
Научиться работать с БД посредством PDO. Знать что есть SQL-инъекция.
Познакомиться с какой-нить современной системой контроля версий (да хоть с SVN)
И на что я могу расчитывать?
Месяц изучения, и вы уже сможете претендовать на должность Junior PHP разработчик. Ответ на меркантильный вопрос смотрите на DOU
Как начать программировать на PHP
Рано или поздно на пути каждого начинающего веб-разработчика встает вопрос о том, куда ему двигаться дальше и что поможет ему в создании более сложных вещей, чем он делал до этого.
Сегодня мы познакомимся с простым, но имеющим огромные возможности языком программирования PHP, узнаем, почему многие считают его привлекательнее других языков, как легко начать программировать на PHP и на какую зарплату можно рассчитывать.
Чем отличается frontend от backend
Все сайты, которые мы видим в интернете, состоят из двух частей — frontend и backend. То, что мы видим визуально, — красивые анимации, слайдеры, выпадающие меню и прочее, — это frontend. Дизайнер нарисовал картинку, которую мы превратили в рабочий код с помощью HTML, CSS и JavaScript.
На уровне backend создается сама платформа, которая связывает сайт с внутренними серверными системами, обрабатывает пользовательские запросы, ведет общение с базой данных и в конце выводит результат во frontend.
В создании бэкенда и используется язык PHP.
История создания PHP
Языку PHP уже более20 лет. Он был разработан датчанином Расмусом Лердорфом в 1994 году как простая надстройка, которая показывала количество посещений его персональной странички. Тогда он назвал ее просто — Personal Home Page.
Все эти годы язык эволюционировал. Три года назад вышла седьмая версия. Она намного эффективнее предыдущих версий PHP — 5-й и 6-й:
А значит, на сегодня PHP продолжает быть актуальным и востребованным среди веб-разработчиков.
Курс «Профессия PHP-разработчик»
Отсрочка оплаты на полгода. Вы освоите популярный язык программирования, научитесь писать сайты и программы — и получите востребованную работу.
Подробнее >>>
Почему именно PHP
Часто говорят, что PHP — это язык для новичков, он не предназначен для создания крупных enterprise-проектов. Это не так. Есть немало сервисов, написанных на PHP, создатели которых стали миллиардерами. Например, социальные сети Facebook и «ВКонтакте» написаны на PHP. Такие популярные CMS, как WordPress, Drupal, «1С-Битрикс» также написаны на PHP. И немалая часть сервисов Google тоже написана на этом языке.
PHP имеет очень низкий порог входа. Это язык, который позволит вам буквально через месяц обучения писать небольшие сайты. И в дальнейшем, развивая свои навыки, вы сможете программировать уже высоконагруженные отраслевые решения, в которых нуждаются ведущие мировые компании.
На данный момент PHP — самый востребованный язык программирования. На рынке он занимает долю в 24,6%. Примерно столько же занимает Java со своими 21,1%. А третий язык С# уже значительно отстает — 9,8%.
Рейтинг популярности языков программирования составлен на основе вакансий работодателя, и в ближайшие5 лет такое соотношение, по всей видимости, останется неизменным.
Уровни зарплат на вакансии PHP-разработчиков
По статистике HeadHunter, зарплатный максимум программиста PHP в России составляет250 000 рублей. Если разделить зарплаты по уровням профессионального развития программиста, то цифры такие:
Только входит в профессию, умеет что-то писать и имеет коммерческий опыт программирования порядка 2-3 месяцев.
Может справиться с 90% поставленных задач и имеет опыт программирования от6 месяцев до1 года.
Может решить любую задачу на PHP, спроектировать решение, архитектуру, подобрать код и обучить junior- и middle-программистов выполнять эти задачи.
Полный спектр скиллов веб-разработчика
Давайте рассмотрим, каким комплексом знаний должен овладеть новичок, чтобы заниматься непосредственно backend-разработкой:
Литература
Создаем простой скрипт
Давайте рассмотрим простой пример работы с PHP и создадим небольшой скрипт. Мы не будем подробно вникать в синтаксис языка и в назначение операторов, а лишь наглядно покажем, как PHP взаимодействует с HTML.
Для начала нам нужно установить компилятор PHP на компьютер. Так как мы выяснили, что PHP — это серверный язык, то существуют специальные готовые сборки веб-серверов, которые включают в себя, помимо PHP, и другие полезные инструменты, например, СУБД MySQL. Одной из таких сборок является Open Server. Для написания кода будем использовать текстовый редактор Sublime Text 3.
Вступительный урок. Что нужно для начала работы с PHP
В этом вводном уроке вы познакомитесь с нужными программами, которые нужны для работы с PHP.
Что нужно знать
Перед началом изучения PHP, я бы порекомендовал вам изучить HTML.
Файлы, в котором записан PHP код нужно сохранять под расширением .php
Для того чтобы научится PHP (как и любому другому языку программирования) важно много практиковаться.
Когда вы будете читать уроки, то не копируйте код, а именно пишите сами, так будет лучше для Вас, так Вы быстрее запомните сам язык, и вам будет легче дальше.
Программное обеспечение
Первая программа, которая вам нужна, это браузер (то, в чем Вы сейчас находитесь :D)
Веб-сервер. Для локального тестирования вам нужно установить веб-сервер. Я рекомендую поставить Open Server (Mini версии будет достаточно). Как установить Open Server. Open Server является портативным, т.е. вам нужно только разархивировать скачанный архив и запустить сервер через Open Server.exe. После старта программы вы увидите красный флажок в трее Windows (область возле системных часов). Чтобы включить непосредственно сам веб-сервер нажмите на флажок, далее выберите пункт меню Запустить.
Чтобы создать новый домен вам нужно перейти в папку OpenServer/domains и создать папку с подходящим для вас названием, после создания новой папки нужно перезагрузить веб-сервер (нажать на флажок в трее, нажать Перезагрузить). После чего вы сможете получить доступ к своему локальному домену по адресу http://yourdomain
Убедитесь, что в Open Server есть права на редактирование Windows hosts файла. Некоторые антивирусы могут блокировать доступ к этому файлу. В противном случае, вы не сможете создать локальные домены.
Последняя программа, которая потребуется, это блокнот, он нужен для редактирования PHP кода. Но, я рекомендую поставить вам Notepad++ или Sublime Text, это лучше чем использовать обычный блокнот Windows.
После уроков
После уроков, крайне важно не останавливаться только на одном учебнике, я рекомендую вам еще почитать книги о программировании на PHP, почитать статьи и т.д. После учебников рекомендую написать какой-то свой маленький веб-сайт или сервис, при написании которого вы столкнетесь с проблемами, которые будете решать и одновременно учиться.
Первый урок
Если вы уже установили все необходимое программное обеспечение, то можете переходить к первому уроку
🐘 Самоучитель для начинающих: как освоить PHP с нуля за 30 минут?
Miroslav Kungurov
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-каналы и курсы
Бесплатные курсы на русском языке: