Изучение пхп. С чего начать изучение PHP? Что такое MySQL

Есть в веб-программировании такие дисциплины, основы которых обязан знать любой человек, связанный с всемирной паутиной. Поэтому, так или иначе, а изучать PHP и MySQL вам придется. А если не хотите, то жадность все равно заставит:

Зачем изучать php и MySQL?

Такой вопрос могут задавать лишь те, кто совсем не знаком со спецификой построения веб-пространства и ее современной основой. Любой мало-мальски сведущий в программировании человек скажет, что эти две дисциплины являются на сегодняшний день главенствующими во всемирной паутине. А это значит, что почти весь интернет построен на основе PHP и MySQL :

Хотя в наше время значение PHP немного уменьшилось. И все из-за большого количества движков, которые (по иронии ) также построены на основе этого языка.

В современном веб-мире под движками понимают любую систему управления контентом (Content management system, CMS). Большая часть из них написана на PHP и MySQL.

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

Начнем с того, что не у многих хватает терпения, времени или сил заниматься изучением PHP и MySQL . К этому человек должен прийти сам. Но тот, кто решится постигнуть эти дисциплины, получит:

  • Востребованную профессию – на рынке труда толковые программисты всегда были нарасхват. Но даже неопытные новички с хорошими теоретическими знаниями PHP и небольшим опытом в веб-программировании смогут найти работу с достойной оплатой;
  • Удаленную работу – для того чтобы заниматься программированием не обязательно рано вставать, добираться на работу и соблюдать дресскод. Все это можно оставить за порогом, и создавать программный код, сидя дома в комнатных тапочках;
  • Экономию денег – если вы являетесь владельцем сайта, то конечно знаете, что услуги профессиональных веб-программистов стоят дорого. А для начинающего свое дело в интернете дорога каждая копейка. Самостоятельное обучение MySQL и PHP позволит сэкономить средства и пустить их в нужное русло.

Как уже отмечалось, большинство современных движков работают на основе PHP . Хотя их отказоустойчивость и находится на высоком уровне, но влияние человеческого фактора никто не отменял. Поэтому код CMS иногда ведет себя не так, как задумал веб-программист.

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

  • Интересное хобби – веб-программирование это не только средство зарабатывания денег или их экономии. Это еще и увлекательное занятие, которое совмещает в себе как техническое начало, так и творческую составляющую.

Изучение PHP и MySQL для многих может стать средством самовыражения.

Что такое PHP

PHP относится к скриптовым языкам программирования. Чаще всего он применяется для создания веб-приложений и веб-сервисов. Данный язык поддерживается большинством хостингов в интернете. На его основе написана основная часть динамических сайтов.

В динамическом сайте в отличие от статического, созданного лишь на html, содержимое всех страниц формируется в ответ на пользовательский запрос. Структура ресурса формируется на основе файлов шаблона, а содержимое (чаще всего) загружается из баз данных.


Популярность PHP объясняется его следующими характеристиками:

  • Поддержка большинства популярных СУБД (Систем Управления Базами Данных );
  • Автоматическая отправка заголовков HTTP ;
  • Встроенная поддержка работы с сессиями и cookies;
  • Средства работы с удаленными файлами;
  • Поддержка XForms (формы, созданные на основе XML );
  • Приближенность синтаксиса PHP к языку C;
  • Отсутствие строгой типизации – типизация переменных осуществляется динамически.

Типы данных – это то, с чего начинают изучение PHP

  • Поддержка ООП (объектно-ориентированного программирования );
  • Большой набор суперглобальных (предопределенных) массивов, предназначенных для работы с веб-пространством.

Что такое MySQL?

MySQL – это свободно распространяемая СУБД от компании Oracle . Вместе с бесплатной версией ведется разработка и коммерческих выпусков под заказ. Именно благодаря этому все новые разработки корпорации обязательно внедряются и в бесплатные выпуски СУБД :

Особенности СУБД MySQL :

  • Поддержка механизма репликации данных, начиная с первых выпусков MySQL .

Репликация – процесс синхронного копирования всех изменений источника сразу на нескольких его экземплярах. То есть любое действие над данными одной копии объекта отразиться и во всех остальных его образцах.

  • Поддерживается работа, как с локальными источниками, так и с удаленными;
  • Встроенная поддержка большого количества типов таблиц. Причем благодаря открытому коду список поддерживаемых типов таблиц увеличивается;
  • Широкий диапазон кроссплатформенности;
  • Размер таблиц баз данных MySQL ограничивается лишь возможностями операционной системы, на которой развернута СУБД ;
  • Поддержка большинства популярных языков программирования с помощью API (интерфейса прикладного приложения ).

Более подробную информацию о возможностях СУБД можно узнать из любого самоучителя или справочника по MySQL.

С чего начать?

По горькому опыту многих новичков можно сделать вывод, что главной проблемой самостоятельного изучения PHP и MySQL является выбор правильного программного обеспечения. И все из-за того, что PHP является серверным языком программирования. Поэтому для тестирования кода нужен не только специальный редактор, но и локальный сервер:

Несколько оптимальных вариантов:

  • Apache HTTP Server – можно скачать на официальном сайте разработчика;
  • Денвер – наиболее оптимальный вариант для установки и дальнейшего использования. Пакет инсталляции включает в себя сервер Apache, PHP и MySQL . В первом варианте вам бы пришлось все это скачивать и устанавливать по отдельности.
  • XAMPP – набор, включающий в себя PHP и MySQL . А также встроенный самоучитель по PHP :

Оба набора включают в себя утилиту для создания и изменения баз данных на основе MySQL с помощью запросов на T-SQL . Но для написания кода на PHP понадобится редактор с поддержкой синтаксиса этого языка. Несколько наиболее подходящих вариантов:

  • PHPEdit ;
  • Microsoft WebMatrix ;
  • Kantharos PHP IDE ;
  • Adobe Dreamweaver .

И напоследок хотелось бы дать дельный совет всем начинающим. Не стоит думать, что у вас больше пядей во лбу, чем у всех остальных. Обучение нужно начинать с основ. Поэтому новичкам больше подойдет самоучитель PHP для чайников, а не продвинутый справочник для профессионалов. Тогда и камень веб-науки окажется не таким уж и твердым.


Для тех, кто хочет изучать PHP, можно посоветовать великолепный "Самоучитель PHP " с сайта PHP5.RU
Курс находится в процессе написания, но уже сейчас ссылки на отдельные уроки из него стоят в различных разделах этого FAQ. И, поверьте - оно стоит того.
Не могу не порекомендовать замечательный материал Вадима Ткаченко АКА Bizon-а "Вступление в PHP и MySQL" . Он даже издавался отдельной книгой, а сейчас - исправленный и дополненный - размещается на сайте
"PHP в деталях ". Этот ресурс стоит особняком. В отличие от предыдущих, рекомендовать прочесть его целиком может только садист - там слишком много информации. но в этом и его прелесть. Это неисчерпаемый ресурс информации по PHP. Единственное замечание - обращайте внимание на дату написания статьи. Не стоит особо доверять тем, что написаны до 2003 года.
Ну, и, конечно же - этот сайт, http://сайт
Если вы еще не прочли его целиком - обязательно сделайте это. Здесь перечислены проблемы, с которыми рано или поздно столкнется КАЖДЫЙ, кто пишет на PHP.

Программное обеспечение.
Для работы с РНР под Windows, надо установить следующие программы:
- web-сервер Apache (5Mb)
- сам PHP (10Mb)
- по желанию - MySQL (23Mb).
Настройка очень простая. Апач устанавливается программой установки. Там, где он запрашивает имя вашего сервера и емейл администратора, надо 2 раза написать localhost и свой e-mail.
PHP распаковывается из зипа в любой каталог по желанию (стандартно - C:\PHP) и настраивается обязательно как модуль Апача. Для этого надо выполнить три действия:
- переписать файл php5ts.dll в каталог WINDOWS
- в файл httpd.conf (C:\Program Files\Apache Group\Apache\conf\httpd.conf), в самом низу, добавить две строчки
LoadModule php5_module c:/php/php5apache2_2.dll
AddType application/x-httpd-php .php .phtml

- перезапустить Апач (с помощью утилиты Apache monitor в трее)
Выполнив все эти действия, можно положить тестовый php скрипт (допустим, он называется test.php и состоит из строчки

в каталог, который является корневым для веб-сервера (по умолчанию это C:\Program Files\Apache Group\Apache\htdocs\) и обратиться к нему, написав в браузере адрес
http://127.0.0.1/test.php

При установке MySQL выбрать Standard configuration, на следующем экране нажать Next, на следующем - задать пароль или снять галочку "Modify security settings", если хотите оставить его пустым.
Для проверки запустите консоль Mysql: Пуск - Выполнить и в появившуюся строку скопировать
"C:\Program Files\MySQL\MySQL Server 5.1\bin\mysql.exe"
или
"C:\Program Files\MySQL\MySQL Server 5.1\bin\mysql.exe" -uroot -pPASSWORD
если консоль запустилась - все работает. Наберите exit для выхода и приступайте к конфигурированию поддержки mysql в PHP.
Для этого, если вы не сделали этого раньше, возьмите файл c:\php\php.ini-development и скопируйте под именем php.ini в каталог windows. Затем отредактируйте его, убрав точку с запятой в начале строки
;extension=php_mysql.dll
и отредактировав параметр extension_dir:
extension_dir = "c:\php\ext\"
заодно можно сразу исправить
short_open_tag = On
чтобы работали старые скрипты и удобные шаблоны
и не забудьте после этого перезапустить Апач, как это было описано выше.
Теперь вы можете использовать mysql в своих php-скриптах.

Те, для кого эта инструкция слишком сложна, могут попробовать установить готовый комплект Денвер-2 .
В него входит сразу все, что нужно, и еще много ненужного. А главное - работает все само.
Еще одно достоинство Денвера в том, что объем базового комплекта в 10 раз меньше полных версий - всего 4 мегабайта. А так же то, что его автор пишет интересные книжки по PHP.

Так же, всем любознательным рекомендуется ВЕСЬМА толковая статья Установка и настройка Apache+PHP
с сайта PHP5.RU. И, конечно же - разделы официальной документации, посвященные установке соответствующих программ.

Форумы.
При изучении любого дела обязательно появятся вопросы.
Вопросы удобно задавать на форумах.
http://phpclub.ru/talk/forumdisplay.php?s=&forumid=12
Форум PHPклуба. Самый посещаемый и известный. К сожалению, известность служит ему дурную службу. Очень часто на вопрос новичка отвечает еще более зеленый новичок, давая совершенно неправильный ответ. Однако профессионалов там тоже предостаточно, готовых объяснить ошибки и первому и второму.

PHP представлен и в русскоязычном сегменте Livejournal
В сообществах К сожалению, и так-то не блиставшие качеством материала, они давно заброшены своими авторами и окончательно потеряли актуальность.
Все, что есть лучшего по теме PHP, перечислено вверху страницы.
Если вы знаете хороший сайт - напишите о нем в разделе "Обратная связь".

Буквально вчера посетила глобальная мысль по созданию одного сайта-сообщества, который можно реализовать на Textpattern с некоторыми дописками в PHP. А так как в PHP я нифига не смыслю, а чтобы нанять знающего человека, ему нужно четко сформулировать задачу, а это уже проблема, поэтому решено было взяться за это дело самостоятельно. К тому же у меня есть богатый опыт программирования на Turbo Pascal и Delphi и к тому же давнишняя мечта научится кодить на PHP.

Для меня это будет неплохой мотивацией для изучения этого языка программирования для Web-сайтов.

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

Для того чтобы быстро изучить PHP я скачал книгу PHP для чайников , которая написана Джанет Валейд . Но так как эта книга насчитывает порядка 300 страниц, обучение быстрым не получится. Я понимаю, что всю глубину этого языка нельзя постигнуть с помощью этой книги, даже и ее будет мало, но для того, чтобы нахвататься верхушек PHP и что-то начать писать, эта книга великовата.

Хочу Вам представить отличный сайт, на котором я нашел все что мне нужно, это: www.on-line-teaching.com .

Это не реклама, а просто отличный сайт для таких же новичков как и я. Не стоит смотреть на дизайн сайта, так как не в этом фишка. Лично мне весь материал на сайте показался очень хорошим, так как он очень четко структурирован, содержит реально нужные примеры и самое главное - в нем нет воды. Весь материал на нем, как я понял, является авторским и именно материалы по PHP принадлежит одному человеку - Сергею Артемьеву.

От автора: во всемирной паутине физическая сила ничего не значит! Вы можете с любой силой жать на клавиши, но результат от этого не изменится. В интернете считается сильнее тот, у которого больше опыта и знаний. Хотя мой знакомый так «накачал» железо своего ПК, что стал бояться его! Но это со всем из «железной» оперы. А мы сегодня выясним в PHP с чего начать обучение, чтобы стать сильным программистом.

«Чайная» болезнь

Конечно, пардон, но вы «чайник». Как я догадался? Ну, потому что только новички ставят перед собой такие вопросы. И в этом «звании» нет ничего оскорбительного, потому что у вас наблюдается столько желания к обучению, что можете «закипеть». А это уже признак того, что все удастся!

Изучение PHP, как и любой другой науки, следует начинать с самого начала, то есть с теории. Нужно понять, что представляет собой этот язык программирование: его возможности, основная сфера применения, особенности и так далее. Это важный аспект, поскольку новички из-за нехватки базовой теории, общих представлений о том или ином языке, часто ошибаются в выборе. И после этого с обманутыми ожиданиями бросают обучение после нескольких часов «изысканий». Постараюсь немного приподнять эту завесу, чтобы вы поняли не только, с чего начинать изучение PHP, но и зачем.

Несколько особенностей языка, которые следует знать новичкам:

Чаще всего PHP применяется в сайтостроении, но с его помощью можно разрабатывать и клиентские приложения.

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

Тесная взаимосвязь с – если собираетесь «штурмовать» сайтостроение, то придется выучить и указанную СУБД. Мы в этом вам поможем .

Где начало?

Если собрались изучать программирование на PHP, а с чего начать – не знаете, тогда этот раздел для вас. Начинать следует с основ: с особенностей синтаксиса языка, типов данных, переменных, их инициализации, циклов, объявления функций и т.д. Даже если все это вы изучали в других программных дисциплинах, то придется ознакомиться заново, поскольку PHP имеет ряд особенностей.

Но это будет потом, а первоначально нужно определиться с основной литературой для постижения программной науки. К выбору источников следует подойти весьма серьезно.

Выберите несколько, и прочитайте пару страниц из каждого. Стиль изложения главного источника должен быть максимально прост и понятен. От этого зависит успех обучения в целом.

Для постижения PHP можно использовать различные самоучители, специализированные пособия для «чайников». Хорошо бы сюда еще прибавить один или несколько толковых : визуализация информации значительно повышает усвоение материала. Но еще раз повторюсь: с чего начать изучать PHP и с выбором источников определяетесь вы сами.

Немного личного

В общем, после первого семестра по успеваемости я скатился в самый низ. И все потому, что преподаватели, видя, что большая часть студентов «проглатывает» весь материал даже «нежеваным», старалась дать как можно больше. Но у меня не было того опыта, которым обладали мои согрупники.

На следующий семестр я перевелся в параллельную группу, состоявшую из таких же «чайников». Для них преподы все «раскусывали» и «разжевывали», тщательно поясняли. Здесь дела пошли «на поправку», и я снова стал одним из лучших студентов.

Я не хвастаюсь (ну может немного ), а стараюсь пояснить, что стиль обучение, методы получения информации и длительность постижения дисциплины вы должны подбирать под себя самостоятельно. По моему мнению, различные являются идеальным источником учебной информации. Их подбор – это то, с чего нужно начать изучение PHP с нуля.

Что нужно для начала разработки

PHP является программным языком, код которого выполняется на серверной стороне. Поэтому для локальной работы с ним нужно соответствующее программное обеспечение. Три основных компонента:

Интерпретатор PHP.

Локальный сервер.

Но установка каждого из них компонентов может занять много времени и сил. Особенно, если вы новичок. Самым оптимальным вариантом является инсталляция программного пакета, включающего в себе все составляющие.

Я рекомендую использовать Open Server . Он включает в себя все, что необходимо чтоб начать работать с PHP без особого «головняка». Процесс установки происходит автоматически (легко и быстро). Как раз то, что нужно для настоящих «чайников» .

Надеюсь, мне удалось развеять все сомнения и вопросы, «преследующие» новичков. Чувствуете, как стали сильнее? Это вы только начали заниматься PHP. Уже скоро вы будете настоящими «силачами» в программных науках. До новых «тренировок»!

RSS Твиттере , комментариях или на почте.

Как я выучил PHP

В 2006-ом году мне для одного из моих сайтов потребовался один скрипт. Скрипт был достаточно уникальным, поэтому в поисковиках я найти его не смог (его и сейчас нет в свободном доступе). Лишь на одном сайте я встретил подобный скрипт, который продавался за 20$. Потратить на него столько я тогда не мог себе позволить.

И тогда я решил написать его сам. Так как теория мне не была интересна, я начал сразу же с программирования. Смотрел примеры, выдирал из них куски кода и вставлял их в свой скрипт.

Основная сложность была в том, мой скрипт требовал где-то хранить данные. Я выбрал базу данных MySQL. Поэтому, кстати, я до сих пор плохо работаю с текстовыми файлами.

Сейчас при просмотре на написанный код нельзя не улыбнуться. Я тогда даже не знал какая разница между $_GET[‘id’] и $id (программисты поймут). И на момент окончания работы не знал. Но главное — скрип работал. Самое интересное в том, что он до сих пор висит и работает на моем СДЛ.

Скрипт надо полностью переписывать, но легче написать его заново. А делать это в лом (да и не вижу особого смысла). Единственно, что я сделал спустя все эти годы, поправил безопасность.

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

Практика

Переходите сразу же к практике. Ставьте мини задачи и пытайтесь их решить. Для начала, поставьте совсем маленькую. Например, вычислить и вывести на экран сколько будет 3+2.

$chislo1 = 3;
$chislo2 = 2;
$otvet = $chislo1 + $chislo2;
echo $otvet;

Этот код можно сократить в несколько раз (до одной строки), но в написанном мною виде уже что-то становится понятно. Например, что фигня echo выводит ответ на экран. Догадайтесь теперь, как посчитать такой пример — 3+7*2 (можете написать в комментариях).

Можно начать с таких вот примеров. А можно с посложней. С гостевой книги, например. Кстати, кто-нибудь помнит, что это? 🙂 Скрипт на самом деле очень простой, поэтому очень хорошо подходит для изучения языка.

Как написать гостевую книгу

В базе MySQL будем хранить сообщения. Для этого нам нужно создать в ней всего одну таблицу со следующими полями: имя пользователя, e-mail, дата сообщения и само сообщение.

Остается только написать на PHP вывод сообщений из базы и добавление новых. Решение ищем в учебниках, примерах и т.д. Можно вбить в Яндексе или Гугле запрос «как вывести данные из MySQL».

Или спросить на форумах — «Пишу гостевую книгу. Данные храню в базе MySQL. Поля следующие: имя пользователя, e-mail, дата сообщения и само сообщение. Подскажите, как на страницу вывести все сообщения?». На самом деле вопрос очень простой и ответ него можно найти и самому.

Предлагаю примерно такую схему изучения:

Нужный скрипт -> Разбиение на задачи и их постановка -> Решение задач с помощью учебников, примеров, форумов и т д. -> Чтение теории, понимание написанного кода и его изменение при необходимости -> Скрипт готов

Могу посоветовать вот эти ресурсы для изучения языка:

На форумах не задавайте общих вопросы по типу «Как написать гостевую?». Задавайте конкретные вопросы вида «Я пишу такой-то скрипт. Вот, что я набросал. Почему вот здесь не выводится то-то? А как сделать так? Объясните это» (пример вопроса приводил в пункте про гостевую).

Если есть какие-то вопросы — задавайте!

———————-

Были мысли написать пару уроков по PHP для начинающих. Но будет ли вам это интересно, уважаемые читатели?

Прошу в комментариях ответить на два вопроса:

1. Знаете ли вы какие нибудь языки программирования и какие?
2. Было бы вам интересно читать о PHP?

P.S. Выучив PHP сможете написать сервис по типу TopSape

Внимание! Мини-конкурс! Первые трое отписавших в комментариях к следующему посту, получат по 5$! Чтобы стать первым, подпишитесь на RSS . Победители конкурса ретвитов прошлого поста: lexnevermind, arshi13rus и voeslav. Жду WMR-кошельки в