Контакты

Изучаем PHP и MySQL правильно. Объекты в PHP

1. Подружитесь со справочником по PHP

Если вы новичок в PHP, значит, пришло время познакомиться с внушающим почтение справочником PHP. Справочник по PHP невероятно исчерпывающий и содержит действительно полезные комментарии к каждой статье. Перед тем, как задавать вопросы или пытаться самостоятельно разрешить проблему, сэкономьте время и просто возьмите курс на справочник. Ответы на ваши вопросы уже удобно разместились в полезной статье на сайте PHP.net.
В данном случае мы Вам рекомендуем поискать самостоятельно справочники на русском языке, лучше php для начинающих. Будем рады, если Вы дадите ссылке на полезные справочники в комментариях к статье (Просто учитывайте, что это перевод статьи).

2. Включите отчет об ошибках

Подсветка синтаксиса

Code completion (подсказки идентификаторов в редакторе кода)

Предупреждения об ошибках

Рефакторинг кода (переделка кода)

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

4. Попробуйте PHP-frameworks

Вы можете многое узнать о PHP, просто экспериментируя с PHP-фреймворками. Такие фреймворки, как CakePHP или CodeIgniter , позволяют быстро создавать приложения PHP, даже если вы в нем не эксперт. В каком-то смысле они – дополнительные подпорки, которые показывают вам, каким образом должно выглядеть приложение PHP, и демонстрируют полезные концепции программирования (вроде отделения логики от дизайна и т.д.).

Возражение: лично я не советую новичкам пользоваться фреймворками. Сначала выучите основы.

5. Научитесь DRY

6. Делайте отступы и используйте пробелы в коде для читаемости

Если вы не используете отступы и пробелы в коде, то результат выглядит, как картина Джексона Поллака (Jackson Pollack). Обеспечьте читаемость своего кода и нормальный поиск, потому что почти наверняка в будущем вы будете делать в нем изменения. IDE и современные текстовые редакторы могут автоматически делать отступы в коде.

7. Делайте код многоуровневым

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

8. Всегда используйте

Часто программисты пытаются использовать сокращения в операторах PHP. Вот как это обычно делается:

<% echo "Hello world"; %>

Хотя это действительно экономит несколько символов, все эти методы являются устаревшими и неофициальными. Придерживайтесь стандартного , так как это гарантированно будет поддерживаться всеми будущими версиями.

9. Используйте содержательные, последовательные названия

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

10. Комментируйте, комментируйте, комментируйте

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

11. Установите MAMP/WAMP

MySQL — самый популярный вид базы данных, используемый с PHP (хотя и не единственный). Если нужно настроить локальное окружение для разработки и тестирования ваших PHP-приложений на компьютере, предусмотрите установку MAMP (Mac) или WAMP (Windows). Установка MySQL на ваш собственный компьютер может стать утомительным процессом, а оба этих программных пакета содержат MySQL. Ловко и просто.

12. Установите лимиты своим скриптам

Установка лимита времени на PHP-скрипты – очень ответственная вещь. Бывают моменты, когда скрипты выходят из строя, и когда это произойдет, вам придется использовать свойство set_time_limit (установить лимит времени), чтобы избежать бесконечно повторяющихся циклов и истечения таймаутов времени соединения с базой данных. Set_time_limit устанавливает лимит времени на максимальное количество секунд, за которое выполняется скрипт (по умолчанию 30). По истечении этого времени возбуждается неустранимая ошибка.

13. Используйте объекты (или ООП)

Объектно-ориентированное программирование (ООП) использует объекты, чтобы представлять компоненты приложения. ООП – это не только способ разбить свой код на отдельные логические секции, оно также снижает количество повторений кода и делает намного более легким его модифицирование в будущем.

14. Поймите разницу между одинарными и двойными кавычками

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

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

15. Не ставьте phpinfo() в свой Webroot

Phpinfo – чудесная вещь. Просто создав PHP-файл, в котором есть:

и пристроив его где-нибудь на сервере, вы сможете незамедлительно узнавать все об окружении своего сервера. Тем не менее, множество новичков поместит файл, содержащий phpinfo() в webroot сервера. Это чрезвычайно небезопасная практика, и если чей-то пытливый ум получит доступ, он может потенциально сглазить ваш сервер. Убедитесь, что phpinfo() находится в безопасном месте, а в качестве дополнительной меры удалите его, как только закончите.


16. Никогда, никогда не доверяйте своим пользователям

Если в приложении есть места для входа пользователей, вы всегда должны предполагать, что кто-то попробует ввести сомнительный код. (Мы не подразумеваем, что ваши пользователи — плохие люди. Это просто здравый смысл.) Отличный способ уберечь свой сайт от хакеров – всегда инициализировать свои переменные для защиты сайта от XSS-атак. На PHP.net есть пример должным образом закрытой формы с инициализированными переменными:

17. Храните пароли зашифрованными

Многие новички в PHP часто сбрасывают деликатные данные, такие как пароли, в базу данных, не применяя шифрование. Рассмотрите использование MD5 для шифрования паролей перед тем, как выкладывать их базу данных.

Echo md5("myPassword"); // renders -

Возражение: Тем не менее, помните, что хэши MD5 уже давно скомпрометированы. Безусловно, они скорее безопасны, чем нет, но с помощью гигантской “спектральной таблицы” хакеры могут восстановить ваш хэш. Для обеспечения еще большей безопасности обдумайте возможность добавления «соли» (помех в виде «белого шума»). «Соль» – это обычно дополнительный набор символов, которые вы присоединяете к пользовательской строке.

18. Используйте инструменты визуализации баз данных

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


19. Используйте буферизацию вывода

Буферизация вывода – это простой способ очень сильно улучшить качество и скорость вашего PHP-скрипта. Без буферизации вывода ваш скрипт будет показывать HTML на странице так, как он обрабатывается – частями. Добавление буферизации вывода позволяет PHP хранить HTML как переменную и посылать его на браузер единой порцией.

Для активирования функции буферизации вывода просто добавьте ob_start() как здесь в начале файла.

Возражение: Хотя это и не требуется, обычно считается хорошей практикой просто взять и прикрепить функцию “ob_end_flush();” к концу документа. P.S. Хотите также сжать HTML? Просто смените “ob_start();”на “ob_start(‘ob_gzhandler’)”;

untitled

20. Оберегайте свой скрипт от атаки SQL-injection

Если вы не отделяете (escape) символы, использующиеся в строках SQL, ваш код уязвим для атаки SQL-injection. Избежать этого можно, используя либо функцию mysql_real_escape_string (прим. перев. для отделения символов), либо подготовленные операторы SQL (prepared statements).

Вот пример mysql_real_escape_string в действии:

$username = mysql_real_escape_string($GET["username"]);

И подготовленного оператора:

$id = $_GET["id"]; $statement = $connection->prepare("SELECT * FROM tbl_members WHERE id = ?"); $statement->bind_param("i", $id); $statement->execute();

21. Попробуйте ORM

Если вы пишете объектно-ориентированный PHP, то можете использовать OR-mapping (ORM). ORM позволяет вам преобразовывать данные между реляционными базами данных и языками объектно-ориентированного программирования. Короче говоря, ORM дает возможность работать с базами данных таким же образом, каким вы работаете с классами и объектами в PHP.

Для PHP есть множество ORM-библиотек, таких как Propel, а также ORM встроен в фреймворки PHP, такие, как CakePHP.

22. Кэшируйте страницы, управляемые базой данных

Кэширование PHP-страниц, управляемых базой данных – отличная идея для улучшения скорости загрузки и производительности своего скрипта. В действительности не так уж трудно создать и извлечь статические файлы содержимого при помощи нашего доброго друга ob_start(). Вот пример, взятый со Snipe.net:

// TOP of your script $cachefile = "cache/".basename($_SERVER["SCRIPT_URI"]); $cachetime = 120 * 60; // 2 hours // Serve from the cache if it is younger than $cachetime if (file_exists($cachefile) && (time() - $cachetime < filemtime($cachefile))) { include($cachefile); echo ""; exit; } ob_start(); // start the output buffer // Your normal PHP script and HTML content here // BOTTOM of your script $fp = fopen($cachefile, "w"); // open the cache file for writing fwrite($fp, ob_get_contents()); // save the contents of output buffer to the file fclose($fp); // close the file ob_end_flush(); // Send the output to the browser

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

23. Используйте систему кэширования

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


24. Проверяйте достоверность данных Cookie

Данные Cookie, как любые другие данные, передаваемые по Сети, могут быть вредоносными. Вы можете проверять данные cookie либо при помощи thehtmlspecialchars() , либо mysql_real_escape_string() .

25. Используйте системы кэширования статических файлов

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

26. Профилируйте свой код

Профилирование своего кода при помощи такого инструмента, как xdebug , может помочь вам быстро опознавать узкие места и прочие потенциальные проблемы в своем PHP-коде. Некоторые IDE типа Netbeans так же имеют возможность профилировать PHP.

27. Кодируйте согласно стандартам

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

28. Выполняйте функции вне циклов

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


Примечание редактора: Представьте себе это следующим образом. Попробуйте удалить как можно больше операций из цикла. Вам действительно нужно создавать эту переменную для каждого повторения цикла? Вам действительно нужно использовать каждый раз эту функцию? Конечно, нет.:)

29. Не копируйте добавочные переменные

Некоторые любят пробовать делать свой код более привлекательным с помощью копирования предопределенных переменных в промежуточные переменные. Это уже чересчур и потенциально может удвоить размер памяти вашего скрипта. На Google Code есть плохие и хорошие примеры использования переменной:

$description = strip_tags($_POST["description"]); echo $description;

Echo strip_tags($_POST["description"]);


Возражение: В ответ на комментарий об «удвоении размера памяти», это, в действительности, обычное неверное представление. PHP реализовывает управление памятью“copy-on-write”. По существу, это означает, что вы можете присвоить значение для такого количества переменных, какое захотите, не волнуясь о том, что данные будут реально копироваться. Бездоказательно, что вышеприведенный «хороший» пример может сделать код более понятным, и я очень сильно сомневаюсь, что он хоть немного быстрее.

30. Обновите PHP до самой последней версии

Хотя это кажется весьма здравой мыслью, многие не делают апгрейд PHP настолько часто, как следовало бы. Между PHP 4 и PHP 5 существует много улучшений. Следите за тем, чтобы на вашем сервере было обновленное программное обеспечение.

31. Сократите количество запросов к базе данных

Так или иначе, чем больше вы можете снизить количество запросов к базе данных, тем выше будет производительность вашего PHP-скрипта. Существуют такие инструменты, как Stace (Unix) и Process Explorer (Windows), которые дают вам возможность находить дублирующие процессы с тем, чтобы их можно было бы объединить.


32. Не бойтесь просить помощи

Только человеческой натуре свойственно желание скрыть тот факт, что мы не так много знаем на определенную тему. Никому не нравится быть придурком! Но как можно научиться, не задавая вопросов? Не стесняйтесь пользоваться форумами, IRC, StackOverflow , чтобы задавать вопросы бывалым PHP-разработчикам. На вебсайте PHP есть страница получения помощи по PHP .

Есть свои собственные возражения? Уверен, что есть! Давайте поспорим.

Перевод и редакция: Рог Виктор и Андрей Бернацкий. Команда webformyself.

Объект похож на функцию, но он гораздо сложней. Объект можно назвать совокупностью нескольких функций и переменных, объеденённых одним именем.

Понять что такое объект легче всего на примере, но тут сначала придётся набраться немного терпения и осилить теорию.

Дело в том, что объекты создаются на основе классов, а классы может писать сам программист, а может работать с классами, написанными другими программистами.

Теперь давайте создадим класс.

Class TestClass { // Это тело класса. }

В PHP мы используем слово class , чтобы объявить класс. Имя класса чувствительно к регистру.

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

Class TestClass { public $message = "Hi!"; function sayHello() { echo "Hello!"; } }

Перед объявлением переменной мы видим слово public , это определение области видимости для нашего свойства. По английски public значит общественный, так что из названия понятно, что это свойство класса общедоступно. Об области видимости подробнее мы поговорим позже. Пока терпение и грызём текущую теорию.

Теперь в нашем классе TestClass есть переменная $message со значением "Hi!", эта переменная является свойством класса, и функция sayHello, которая является методом класса.

Итак, мы имеем класс. Теперь на основании этого создадим объект при помощи оператора new .

Class TestClass { public $message = "Hi!"; function sayHello() { echo "Hello!"; } } $govorilka = new TestClass();

Наш объект является как бы копией класса.

Следующий шаг - это использование объекта. Для доступа к свойствам и методам объекта используется оператор -> .

Чтобы получить доступ к свойству $message объекта $govorilka нужно просто написать $govorilka->message. Обратите внимание, что перед названием свойства message мы уже не ставим знак $ .

Доступ к методу осуществляется также, но нужно не забывать о скобках в конце метода, ведь мы имее дело с обычной функцией.

Вот пример обращения к свойству и методу созданного нами объекта:

message; echo "
"; $govorilka->sayHello();

Мы можем менять значения свойств.

message = "Здравствуйте."; echo $govorilka->message; echo "
"; $govorilka->sayHello();

На основании одного класса можно создать сколько угодно объектов.

message = "Здравствуйте."; echo $govorilka->message; echo "
"; $govorilka->sayHello(); echo "
"; // Создаём второй объект $govorilka2 = new TestClass(); echo $govorilka2->message;

Как мы видим, изменение свойтва объекта $govorilka не привело к изменению свойства класса TestClass, и второй объект соответствует классу, экземпляром которого он является.

Стоит отметить, что объекты часто называют экземплярами класса, так что запомните этот термин.

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

type \"$this->name\". Описание: $this->description. Цена: $this->price"; } } $Goods = new Goods(); $Goods->printGoods();

Обратите внимание на псевдопеременную $this , это зарезервированная в PHP переменная, которая используется для доступа к свойствам класса внутри его кода.

То есть, чтобы обратиться к свойству $name класса Goods из его же метода мы использовали конструкцию $this->name.

Теперь давайте немного увеличим пример, усложнением это назвать трудно. Итак:

type. Название: \"$this->name\". Описание: $this->description. Цена: $this->price."; } } $Goods = new Goods(); $Goods->type = "книга"; $Goods->name = "Война и мир"; $Goods->description = "Толстая книга из нескольких томов"; $Goods->price = "543.26"; $Goods->printGoods();

Конечно, нет смысла всё делать таким образом. Обычно объект получает уникальный идентификатор товара и берёт все данные из базы MySQL.

id = $id; $this->type = "книга"; $this->name = "Война и мир"; $this->description = "Толстая книга из нескольких томов"; $this->price = "543.26"; } function printGoods() { echo " ID товара: $this->id. Тип товара: $this->type. Название: \"$this->name\". Описание: $this->description. Цена: $this->price."; } } $Goods = new Goods(124); $Goods->printGoods();

В этом примере слишком много нового.

Первое, обратите внимание на название метода __construct() . Это зарезервированное слово в PHP и такой метод запустится автоматически при создании объекта. Такие методы называются конструкторами.

Когда мы создавали новый объект Goods(124), мы передали конструктору число 124. Конструктор, по легенде:), получил из базы данных соответствующий товар и определил свойства объекта в соответствии с информацией из базы данных.

Свойства объекта у нас имеют область видимости protected , то есть защищённую. К такому свойству мы не можем обратиться напрямую из клиентского кода.

Клиентский код - это код, который использует класс, объект или функцию. Это важный термин, запомните его.

Вот пример попытки обратиться из клиентского кода к защещённому свойству:

price;

Этот пример вернёт ошибку: "Cannot access protected property Goods". Так и должно быть, мы обращаемся туда, куда нет доступа.

Резюме

Итак, что мы узнали на этой странице:

  • Что такое класс. Зачем нужен класс. Как создать класс при помощи зарезервированного слова class .
  • Что такое свойства и методы класса.
  • Как при помощи оператора new создать объект какого-то класса.
  • Как из объекта получить доступ к свойствам и методам класса при помощи конструкции -> .
  • Как изменять свойства класса из объекта.
  • Область видимости свойств и методов. Как ограничить область видимости при помощи слова protected .
  • Как обратиться к свойству метода в классе при помощи псевдопеременной $this .
  • Создание конструкторов при помощи метода __construct() .

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

Следующее, что нам нужно изучить - это наследование в PHP. В этой части мы уже не только изучим механизм наследования, но и сможем привести действительно актуальный пример использования классов и объектов.

Из Зандстры

стр. 51 - проверка передаваемого методу аргумента на соответствие типу класса (можно и проверить на массив).

стр. 56 - оператор instanceof (англ. экземпляр), проверяет соответствие левого аргумента типу объекта в правом аргументе.

PHP (P HP: H ypertext P reprocessor , задумчивый препроцессор

Гипертекста ) - скриптовый язык программирования, oриентированный на web.

B 1 yрокe познакомимся с основным синтаксисом, а так же напишем свой первый скрипт.

Основы синтаксиса:

-
- начало и конец скрипта
оператор присваивания - =

Вывод текстовой информации - echo (может выводить html-код)

While(условие цикла){действие} - цикл
- if(условие){действие выполняемое при неверности условия}else{действие выполняемое при неверности условия} - условие
-

Урок 1. Создание первого скрипта

Как вы видите скрипт состоит из одной строчки.

Что бы выполнить скрипт необходимо соответствующее ПО, для пользователей Windows я рекомендую Denwer (http://denwer.ru)
После установки Denwera создаем в каталоге hosts папку Script.test, в которой в свою очередь создаем папку

WWW. В папке WWW создаем файл index.php? в который переносим содержимое нашего файла.

После сохранения файла перезапустите Denwer. Затем в строке браузера наберите script.test

И вауля! Мы видем надпись Hello World!

Как ненадо писать Hello World:

Hello World Не пишется так

Так:

Ну уж точно не так:

Завершение.

На этом наш урок подошел к концу, ну а в завершении небольшая подборка полезных ссылок:
denwer.ru - сайт откуда можно скачать Denwer
ru.wikipedia.org/wiki/PHP - Что такое PHP
http;//php.net - самоучитель по PHP

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

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

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

Общие принципы

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

Сеть Интернет состоит из огромного количества соединённых между собой компьютеров, маршрутизаторов и прочего железа, нужного для правильной работы. Каждый элемент сети Интернет (узел) обладает уникальным описателем - IP-адресом. Зная IP-адрес узла можно попробовать подключиться к нему, а имея небольшие навыки можно определить кому этот адрес принадлежит и в каком регионе мира находится. IP-адреса принято записывать в виде четырёх групп цифр, разделённых точками, например

192.168.100.003 или 10.10.0.123

Согласитесь, запомнить адреса всех часто посещаемых страниц - задачка не из лёгких. Поэтому в сети Интернет существуют специальные сервера DNS (Domain Name Resolution), на которых хранятся списки сопоставления IP-адресов и символьных имён. Именно благодаря эти серверам пользователь всегда попадает по нужному IP-адресу, набрав в браузере только имя странички.

После того, как мы ввёли в строку браузера имя нужной странички, браузер самостоятельно получает из DNS IP-адрес нужного сервера и посылает по этому адресу специальный запрос на получение странички (HTTP-запрос). Работающая на сервере специализированная программа (т.н. Web-сервер) обрабатывает этот запрос и возвращает в браузер требуемую страницу.

Очевидно, что все действия по отображению страницы можно однозначно разделить на две категории: выполняемые на стороне клиента (клиентский код или front-end ) и выполняемые на стороне сервера (серверный код или back-end ). Причем сервер ничего не знает о текущем состоянии клиента, а клиент - о текущем состоянии сервера. При разработке алгоритмов обмена надо всегда помнить об этом и своевременно передавать нужные данные, описывающие состояние или требуемое действие.

В зависимости от места применения различаются и средства реализации частей. На стороне клиента как правило используется только HTML, JavaScript (AJAX), CSS и Flash. Разработчики серверной части менее стеснены в средствах, т.к. большая часть существующих языков позволяет создавать или описывать HTML-страницы. Наиболее широко распространённы сейчас Java, Perl, PHP, Python, Ruby, C# и VB.NET. Каждый из них имеет свои сильные и слабые стороны, поэтому разработчик должен сделать выбор исходя из стоящих перед ним задач.

Почему именно PHP?

Существует большое количество языков, которые можно использовать при создании веб-сайтов. Некоторые языки существуют давно и успешно применяются (или уже не применяются). Некоторые языки ещё очень молоды и широкого распространения пока не получили. В последнее время PHP выбился в лидеры по популярности, чему есть несколько причин:

  1. Простота. Язык очень легко воспринимается, особенно начинающими программистами.
  2. Скорость разработки. Благодаря простоте и интуитивной понятности, PHP позволяет очень быстро создавать довольно сложные сайты.
  3. Наличие библиотек Существует огромное количество готовых примеров и библиотек классов. Созданы и проверены сотни библиотек, существенно упрощающих жизнь разработчика.
  4. Поддержка Практически любой сервер в Интернете поддерживает PHP
  5. Безопасность PHP позволяет создавать действительно защищённые сайты благодаря встроненной поддержке шифрования данных при хранении и передаче.

Однако за свои преимущества PHP платит некоторыми органичениями. Например, использовать PHP для доступа к системным функциям очень неудобно по сравнению с Perl или Python (поэтому многие сисадмины так любят Perl).Есть ещё несколько ограничений, о которых мы поговорим при изучении соответствующих разделов.

Сейчас PHP прочно занимает своё место среду других web-языков. Если Вы в будущем не планируете заниматься созданием огромных порталов, поисковых систем и особо защищённых сайтов, то PHP - лучший выбор для начинающего web-программиста.

Однако, оставим лирику, пора начать изучение.

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

Мое мнение такое, что каждый уважающий себя вебмастер просто обязан знать PHP. Ниже я расскажу, почему так считаю

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

Причина 1

Ответьте мне на такой вопрос: вы знаете, что такое динамический сайт? Смотрите! Различные выпадающие меню и окошки, которые вы можете видеть на веб-странице – это графические эффекты. Что такое динамика веб-страницы? Это когда ее содержимое будет меняться в зависимости от различных условий. Ну, или, например, в зависимости от запросов пользователей. Возьмем, например, страницу в Яндексе с результатами поиска. Она является динамической. Введем запрос « » и получим одну страницу. А если введем запрос «файлообменники», то страница будет другой.

Но если возьмем, к примеру, фотогалерею со сменой кадров, то это будет всего лишь статическая страница с графическими эффектами. Если вам будет нужно создать динамические страницы, то это в принципе будет невозможно без знаний скриптового языка php. Причина проста. Основой динамических страниц является код скрипта. Он-то и выполняется на веб-сервере, и образует содержимое сайта. А уже это обработанное нужным образом содержимое и передается в браузер пользователя. Поэтому, если хотите создавать динамические сайты, то здесь только один выход — изучать php с нуля

Причина 2

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

А сколько проблем иногда возникает при работе CMS. Тут я вообще молчу. И что? Каждый раз искать программиста и платить ему деньги? Не лучше ли самому изучить php с нуля?

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

Причина 3

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

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

Если посмотреть статистику использования различных CMS, то мы увидим, что более 60% сайтов используют для функционирования самописные движки. Что это значит? А то, что программисты написали для этих сайтов скрипты на PHP, на которых этих сайты и работают.

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

Особую благодарность за информационную поддержку выражаю Евгению Попову – автору ряда видеокурсов по сайтостроению . В том числе и видеокурса «PHP + MySQL для начинающих»

Понравилась статья? Поделитесь ей