Junior Web Developer или что нужно знать для устройства на работу.

Все чаше замечаю в интернете наплыв юных дарований которые желают стать программистами. Большинству из них советуют Web разработку как способ быстрого зарабатывания денег. Ну а там соответственно по большей части идет многими не любимый PHP.

С чего же начать человеку который решил стать на путь PHP?

Ну сперва нужно четко для себя уяснить что "чистый" PHP никому нафиг не нужен. Сайт на php состоит в связке с БД MySQL(чаше всего, но могут быть и другие), JS(в основном jQuery) HTML CSS. По этому пройдемся по порядку.

PHP - основы.

1)Работа со строками. Знать хотя бы три функции и что они делают. Например чаше всего используют str_replace(), strpos(), strlen().

2)Массивы. Почти все время придется работать с ними. например Zend2 в конфигурационных файлах использует многомерные массивы. По этому, уметь "раскрутить" многомерный массив. Знать несколько функций для работы с массивами , например array_search(), array_key_exists, in_array().

3)Циклы. Понимать в чем разница между for, foreach, while. Знать какой из них для чего лучше применять. знание какой из данных циклов работает быстрее. Так же условия. Четкое понимание разницы между if-else, switch-case

4)Функции. Хоть почти все проекты на php обычно объектно ориентированны, бывают случаи когда проще и быстрее написать свою ф-ю для обработки данных. Обязательное понимание возвращаемых значений, обязательные и необязательные параметры, область видимости переменных внутри ф-и и вне.

5)Сессии и куки. Обязательно знание где применяются и записываются сессии, где хранятся куки. Запись и чтение из сессии и куки. Излюбленный вопрос работодателя "Если у клиента отключены куки, то поднимется ли сессия?"

6)Работа с Базой Данных. Сразу скажу что mysql_connect() и любая другая ф-я с префиксом mysql_ уже deprecated. По этому пользуются ее аналогом mysqli_ или PDO. Нужно умение создать подключение к бд, выполнить запрос, вернуть данные.

7)Типы данных в php. Знать обязательно.

8)POST, GET. Отличия между ними, где,какой и для чего применяется.

9)Работа с файлами и папками. Там же будет пример рекурсии для обхода папок.

10)Регулярки RegExp. ф-и для работы с регулярками preg_match(), preg_match_all(), preg_replace(). Модификаторыб квантификаторы, якоря и т.д. Излюбленная задача на собеседованиях - написать регулярку для выдирания всех ссылок со страницы.

11)Обращения с датой и временем.

12)Защита от XSS, javascript и sql иньекций. В общем безопасность php приложений.

Это самые основы которые должен знать любой php разработчик. К сожалению по данным пунктам я не могу посоветовать хорошую книгу, потому как когдя я все это изучал, на дворе был 2006 год, а за это время в php уже многое поменялось. Единственное что я вам могу посоветовать это офф сайт http://www.php.net . При прочтении учебника и натыкания на функции, проверяйте их на данном сайте и смотрите что бы они не были в статусе deprecated, а если они в данном статусе, то смотрите их аналоги.

Во второй части я расскажу, что обязательно нужно знать про объектно ориентированное программирование в PHP. В третьей коснусь HTML, CSS, Javascript. В четвертой расскажу немного про само устройство на работу и выбор компаний. А так же затрону тему framework'ов и профессионального роста.
Вы смотрите срез комментариев. Показать все
Автор поста оценил этот комментарий
самое основное, хотя бы понимание принципов ООП.

что толку от PHP -шного лапшекода ...
раскрыть ветку (4)
1
Автор поста оценил этот комментарий
Я не отрицал этого. Во второй части расскажу, про oop. Или ты считаешь что нужно сразу было начинать с OOP?
раскрыть ветку (3)
Автор поста оценил этот комментарий
не, что бы просто меньше вопросов возникало, нужно было сделать оглавление.


тогда, более цельно все выглядело и не возник у меня вопрос по поводу ООП )
раскрыть ветку (2)
1
Автор поста оценил этот комментарий
Так до конца дочитай. Я написал что будет во второй части. И кстати знание oop есть необходимое но не достаточное для web разработки.
раскрыть ветку (1)
Автор поста оценил этот комментарий
ну ок, я прочитал.
Вы смотрите срез комментариев. Чтобы написать комментарий, перейдите к общему списку