Язык PHP

PHP (англ. рекурсивный акроним PHP: Hypertext Preprocessor — «PHP: препроцессор гипертекста», или Personal Home Page Tools — «Инструмент для создания персональных веб-страниц») — скриптовый язык программирования, применяемый для разработки веб-приложений. Поддерживается подавляющим большинством хостинг-провайдеров, является одним из лидеров среди языков программирования, применяемых для создания динамических веб-сайтов. По синтаксису язык очень близок к C.

Плюсы и минусы PHP

Язык PHP — частый объект справедливой критики и бесчисленных насмешек. Каждая его положительная сторона одновременно является и отрицательной, все зависит от того, с какой стороны смотреть на преимущества и недостатки.

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

Еще один «плюс и минус» PHP — свободная типизация данных, автоматические приведения типов в контексте операции и отсутствие необходимости предварительного объявления переменных. Эта особенность дает программисту большую свободу, но при низкой дисциплине программирования, свойственной новичкам, порождает массу неочевидных логических ошибок и угроз безопасности. Скрипты на PHP лидируют не только по распространенности, но и по количеству взломов, порожденных небрежным кодированием.

Шаблонизация

Изначально огромным преимуществом PHP стала возможность просто и естественно внедрять интерпретируемый код с операторами вывода (и условными операторами) прямо в HTML с помощью специального псевдотега

<?php ... ?>

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

Но в ходе развития функциональности языка инициативу перехватили «чистые программисты» и начали отделять процессинг от шаблона. В результате интерпретатор PHP оброс огромным количеством функций на все случаи жизни, прямые врезки в HTML-код стали непопулярными, и в конце концов на PHP начали создавать шаблонизаторы вроде Smarty, «прекомпилирующие» шаблон с генерацией… того же самого PHP-кода, вставленного в HTML. Таким образом, рекурсия сопутствует PHP во всем — она содержится не только в названии PHP, но и в его применении.

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

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

php.txt · создано: 2012/09/03 23:18 — Роман Евгеньевич · Последние изменения: 2012/10/19 17:22 — Spinne
Наверх
Driven by DokuWiki