Задать вопрос

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. Что же нужно знать и уметь в итоге? И сколько времени на это уйдет? Заранее спасибо!
  • Вопрос задан
  • 114324 просмотра
Подписаться 67 Средний Комментировать
Ответ пользователя Yuri Morozov К ответам на вопрос (7)
metamorph
@metamorph
Я сейчас, наверное, дикую вещь скажу, но php лучше начинать учить с MVC-фреймворков (например, Yii).

Дело в том, что php — язык, всем своим видом так и призывающий писать говнокод. Если начать с фреймворка — мысли потихоньку улягутся по местам, а потом станет интересно, как именно работает такая-то функция, а потом другая функция, а потом… Ну и так далее.

PS. Я начинал с CakePHP, при этом вообще не зная языка (всю жизнь на перле писал). Кейк был хорош своей жесткой политикой в отношении архитектуры приложения (в Yii, кстати, с этим помягче). Ну и как-то слово за слово через пару недель уже первый проект запустил, а потом и с языком вроде разобрался.
Ответ написан