Не могу научиться php

Как я учил php или часть вторая ⁠ ⁠

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

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

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

Вернулся опять к учебникам – для начала взял совсем простой переводной и стал изучать более внимательно и вдумчиво. Потом я читал, что php это очень простой язык, школьник справится. А у меня высшее образование и я ничего не понимаю. Прошёл этот простой учебник полностью без пропусков и ничего в голове не отложилось. Вернулся к первому учебнику, он более подробный. Теперь стало проясняться, а зачем один термин авторы на две страницы растянули, перед этим не понимал. Прошёл и этот учебник, немного понял, только именно что немного.

Читайте также:  Работа с ком портами java

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

И как-то так получалось, что все модули и плагины требуют именно ту тему, которую делал автор или нужно эти модули самостоятельно дорабатывать. Вот и мне понадобилась доработка плагина, нужен javascript, а я его совершенно не знаю – один язык не получается нормально выучить, куда там ещё что-то учить. С горем пополам доработал я свою тему и успокоился. Даже начал учить новое по своей основной работе и всё стало получаться гораздо лучше.

Только прошло совсем немного времени и мне опять понадобились доработки сайта. Полез на форумы, там объясняли, что нужно лезть в движок, по-другому никак. А в движке ООП, которое я не знаю – опять присел за учебники.

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

Итак, я стал заново учить язык и учить ООП. Учебники выучил, знаний почти не добавилось – ну как-то слишком всё упрощено и выхолощено. Стал разбирать реальные примеры, правильно сделанных движков очень мало, это я потом понял.

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

Ненадолго расслабился – а потом по работе мне понадобилось собрать материал для работы, это гигабайты информации и вручную собирать, так поседею раньше, чем соберу сотую часть. Залез в интернет и там узнал, что мне нужны парсеры. Знаний у поэтому вопросу никаких, но пишут, что на php это можно делать. Ну php я «немного» знаю, должен справиться. К тому моменту я уже понимал, что php я знаю вообще поверхностно, какой баран написал, что это очень простой язык? Ну приступил и сразу обломался.

Продолжу на следующей неделе.

Источник

PHP: с чего начать, как учить и что в итоге знать?

Ровно 2 месяца назад я спрашивал тут о том, как стать профессиональным веб-разработчиком за 7 лет (http://habrahabr.ru/qa/21830/). Сразу стало понятно, что без английского, с которым у меня все не очень гладко, не обойтись. За 2 месяца я подтянул свои знания английского на уровне чтения технической литературы, обзавелся маком и подтянул знания в html5.

К делу

Настало время изучения php. Хотя я его уже учил. Знаю типы данных, функции, mysql на уровне простых запросов, немного ооп и небольшую часть библиотеки GD2. Очень плохо с практикой, то есть не знаю как применять все это в деле. Я смогу написать очень простую систему регистрации с хранением данных в mysql базе; вход с помощью cookie и сессий; гостевую книгу и какой-нибудь простой поиск.

Вопросы

1. Как учить php чтобы реализовывать проекты на нем профессионально?
2. Какие книги стоит для этого читать? Как учить? По сколько часов в день?
3. Как научиться правильно использовать php на практике? Что он может?
4. Какие БД использовать?
5. Что насчет фреймворков?
6. Что такое git (github) и зачем это нужно?
7. Что же нужно знать и уметь в итоге? И сколько времени на это уйдет? Заранее спасибо!

FanatPHP

На первые несколько пунктов попробую написать рекомендации в свободной форме.

Первое и самое главное — чтобы хорошо изучить программирование на РНР, надо хорошо изучить программирование. Это очень важная вещь. Большая часть людей, пишущих на РНР, не имеют ни малейшего представления о программировании. Даже о таких базовых вещах, как форматирование кода, отладка, профайлинг, обработка ошибок, файловые операции. Можно заметить, что я не говорю об ООП. Это совсем отдельная тема, ООП надо учить специально. К сожалению, из 100 человек, которые говорят, что знают ООП, 90 являются банальными копипастерами, выучившими синтаксис, но не понимающими смысла объектов. Но чтобы играть в шахматы, недостаточно знать, как ходят фигуры.

Ещё неплохо бы ответить себе на вопрос — для чего ты хочешь выучить программирование на РНР? Вопрос совсем не праздный. Многие люди смешивают в нем кучу разных понятий. К примеру, здесь уже упоминали CMS. и действительно, если речь идёт о зарабатывании денег, то кастомизация Джюмлы и написание к ней говномодулей в финансовом плане куда более выгодны, чем умение писать что-либо с нуля. Для фриланса, во всяком случае.

  • Можно склепать гостевую или сайт-визитку на «голом» РНР — и ничего плохого или позорного в этом нет. Наоборот — это плюс языка, который годится и для таких целей, не таща за собой пару миллионов строк кода ради сайта из пятисот.
  • Можно написать профессиональный портал, взяв за основу какой-то из существующих фреймворков, и заниматься его развитием.
  • Можно написать кастомный хайлоад проект, для которого нужно будет писать собственный фреймворк опять на голом РНР.
  • Можно, как уже говорилось, клепать сайты на основе какой-нибудь ЦМС.

Вариантов масса! поэтому нужно определиться сначала, чего хочется.

Там выше говорили про JS+CSS — не надо слушать, это полная ерунда. Фронтенд программирование — совсем отдельная вещь, куда больше визуальная, чем абстрактная. И, слава богу, все больше работодателей начинают понимать это. Хотя опять же — если фрилансишь и на все руки мастер — то без этого никуда.

Но если работать хардкорным серверным программистом в команде, то об HTML/JS/CSS нужно иметь только общее представление (поскольку тексты на этих языках являются, вообще-то, практически единственным результатом работы РНР).

А вот что обязательно нужно хорошо знать из сопутствующих технологий — это протокол НТТР, устройство файловой системы, работа c командной строкой в линуксе.

Mysql всё ещё является краеугольным камнем хранения данных в вебе. Нужно знать и понимать джойны, индексы

Фреймворки — обязательно. Тут, правда, стоит проблема выбора, но принципиальной разницы между ними нет. Yii — неплохой выбор.

Гитхаб тебе не нужен, знать его не обязательно. Знать надо git.
А вот что является обязательным для веб-программиста — это умение пользоваться гуглем. Хотя бы на уровне умения скопипастить в поисковую форму сообщение об ошибке или написать вопрос «Что такое git» 😉

Потому что для работы в команде какую-либо систему контроля версий знать надо, а git является стандартом де-факто. Понимать принцип работы и базовые команды — чекаут, коммит, пуш.

Источник

Не могу научиться php

1. Синтаксис

Код в PHP заключается в открывающий теги. Согласно стандарту кодирования PSR-12, закрывающий тег должен быть опущен в файлах, содержащих только код PHP . В конце строки ставят разделитель строк – точку с запятой ; . Если забыть поставить разделитель, то следующая строка кода соединится с предыдущей и интерпретатор PHP выдаст ошибку.

Выведем на экран строку Hello World (заключена в кавычки) с помощью команды echo :

Рис. 2. Условный оператор if в PHP

Оператор if выполняет код, если выполняется условие. В противном случае выполняется код после else, который переводится, как «иначе», «в другом случае».

Рис. 3. Цикл while в PHP

Оператор while выполняет код до тех пор, пока значение условия не станет ложным.

Рис. 4. Цикл for в PHP

Когда нам известно количество итераций, вместо цикла while лучше использовать цикл for .

Рис. 5. Индексы элементов в массиве PHP

Массивы – упорядоченная коллекция элементов с доступом по индексу или ключу. Индексный массив создается двумя способами:

Рис. 6. Запуск встроенного в PHP веб-сервера

Если мы получили ошибку 404, значит сервер запущен.

XAMPP

Скачаем и установим XAMPP . В папке C:\xampp\htdocs\ создадим папку нашей странички page . Запустим веб-сервер Apache, кликнув по кнопке Start . Узнаем версию PHP, введя в консоли (Shell) команду php -v .

Рис. 7. Запуск сервера с помощью XAMPP

Проверим, запущен ли сервер, перейдя по адресу http://localhost/ . Если появилось приветственное сообщение, значит сервер запущен.

Рис. 8. Запуск сервера с помощью XAMPP на Windows

14. Собираем страничку

Теперь создадим несколько PHP-файлов, из которых соберем страничку. Перейдем в папку page и создадим четыре файла: index.php , header.php , body.php , footer.php .

Структура простого HTML-документа выглядит следующим образом:

Рис. 9. HTML-страница, собранная из php-файлов

Литература

  • Робин Никсон. Создаем динамические веб-сайты с помощью PHP, MySQL, JavaScript, CSS и HTML5;
  • Котеров, Симдянов. PHP 7;
  • Веллинг, Томсон. Разработка веб-приложений с помощью PHP и MySQL;

Шпаргалки

YouTube-каналы и курсы

Бесплатные курсы на русском языке:

  • Основы php с нуля. Новейший курс 2020 – двадцать четыре урока от основ до регулярных выражений и функций;
  • Базовый курс по PHP 7 – узнаете про базовые понятия, GET-параметры, методы, функции и ООП;
  • Учим PHP за 1 Час – основы за полтора часа;
  • Изучение PHP для начинающих – научитесь работать с массивами, подключать файлы, обрабатывать формы, работать с куки и базой данных MySQL;
  • Уроки PHP 7 – много уроков по ООП;
  • PHP для начинающих – курс на Stepik для начинающих разработчиков, не требует специальных знаний;
  • PHP – первое знакомство – азы программирования на PHP (Stepik).

PHP в «Библиотеке Программиста»

  • подписывайтесь на тег PHP , чтобы получать уведомления о новых статьях;
  • телеграм-канал «Библиотека пхпшника»;
  • книги по программированию в нашем телеграм-канале «Книги для программистов».

Итог

  • вы познакомились с синтаксисом PHP и типами данных;
  • узнали, как работают условные операторы и циклы;
  • запустили веб-сервер в Ubuntu и Windows;
  • собрали страничку HTML из файлов PHP.

Источник

Оцените статью