Что такое php программирование? Что такое PHP? Пишем свою первую программу на PHP

PHP(Personal Home Pages Tools) был создан программистом из Дании, Расмусом Ледорфом, как набор скриптов, написанных на Perl, для учета посетителей его личной странички (онлайн-резюме) в 1995 году. Вскоре после этого Расмусу понадобилось расширить возможности этого набора, поэтому он написал на С новый интерпретатор, который назвал PHP/FI. Язык унаследовал от Perl стиль обозначения переменных, но синтаксис был намного проще.Через два года автор языка выпустил вторую версию.

PHP/FI 2.0 не пользовался большой популярностью, пока в 1997 году программисты из израильского города Хайфа, Зеев Сураски и Энди Гутманс, не предложили Расмусу Ледорфу вместе работать над улучшением PHP. В итоге, весь код был полностью изменен и через некоторое время выпустили PHP 3.0 (от аббревиатуры FI решили отказаться). В результате этих изменений язык стал очень популярным и стал использоваться на огромном количестве веб-сайтов. Для большей солидности аббревиатуру поменяли на “PHP: Hypertext Preprocessor”, чтобы язык не ассоциировался только с домашними страничками.

Вскоре после выпуска третьей версии Сураски и Гутманс начали работу над PHP 4.0. Новый движок для языка назывался Zend Engine, а их фирма, которую они впоследствии основали, стала называться Zend Technologies. Пятая версия была представлена в 2004 году, в ней была улучшена производительность и изменены функции ООП (взяли за основу модель из Java).

PHP 6.0 так и не вышла (из-за проблем с Юникодом), после чего долгое время развивалась только пятая версия. Однако, в 2014 году начали разработку PHP 7.0, которая вышла в конце 2015.

Философия PHP

PHP очень сильно похож на С, однако в нем есть некоторые заимствования из Perl(например, обозначение переменных начинается со знака доллара). Как и в JavaScript, PHP код разрешено включать прямо в html-страницы или же создавать отдельные файлы, но в PHP они будут выполняться на стороне сервера (JS скрипты можно запускать локально в браузере, а для PHP нужен web-сервер).

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

Где применяется PHP

PHP один из наипопулярнейших языков в Web, на нем написано огромное количество сайтов, блогов, фотогаллерей, интернет-магазинов, сайтов знакомств, форумов, социальных сетей (ВКонтакте и Facebook, хотя сейчас они используют свои версии языка, KPHP и HPHP). Движок для Википедии (MediaWiki) написан на PHP.

На PHP редко приходится делать что-то с нуля потому, что уже существует большое количество готовых решений и систем. Для создания новостных сайтов или аналогичных есть три CMS (систем управления содержимымы) о которых, наверное, слышали все - это Joomla, Wordpress и Drupal. Для интернет магазинов есть системы управления OpenCart, Magento. Все они бесплатны, за исключением дополнительных модулей, которые не входят в них.

Для создания GUI-приложений PHP применяется редко, однако всё же есть такие расширения и библиотеки, как PHP-GTK и PHP-Qt, а также некоторые IDE и пакеты (WinBinder), при помощи которых можно создать оконное приложение.

Сложность обучения PHP

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

Стоит отметить, что в языке могут встретиться непонятные для неподготовленного человека синтаксические конструкции. Например, может встретиться такое сообщение об ошибке, как “syntax error, unexpected T_PAAMAYIM_NEKUDOTAYIM”. Начинающий программист может начать ломать голову, что за PAAMAYIM_NEKUDOTAYIM, но объясняется всё довольно просто. Разработчики языка (Сураски и Гутманс) при добавлении синтаксических элементов использовали транскрипцию с их родного языка, иврита. В данном случае это, скорее всего, означает, что было поставлено лишнее двойное двоеточие (в PHP есть такой оператор). Такие синтаксические конструкции могут периодически встречаться при программировании на PHP, поэтому можно просто погуглить документацию по языку или спросить на каком-нибудь ресурсе для PHP-программистов.

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

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

  • В интерпретатор встроены все основные функции, поэтому не нужно подключать никаких модулей. Также в стандартной версии языка уже есть большая часть необходимых разработчиков модулей;
  • Поддерживает большинство баз данных;
  • Вывод ошибок прямо на веб-страницу (хотя, при неправильной настройке это может стать и минусом, так как их увидят и посетители сайта);
  • Есть много библиотек и расширений, практически ничего не нужно создавать с нуля;
  • Доступность для большинства платформ - Windows, Linux, Unix, MacOS;
  • Поддерживается на любом хостинге (вряд ли удастся найти такой, который не поддерживает);
  • Поддерживается большим сообществом разработчиков;
  • Легко найти вакансию или зарабатывать фрилансом.

Теперь рассмотрим минусы:

  • Проблемы с безопасностью;
  • Плохо подходит для создания GUI-приложений;
  • Отсутствие многопоточности;
  • Нет обратной совместимости между разными версиями языка (это проблема есть и во многих других языках программирования);
  • Проблема с поддержкой юникода;
  • Относительно невысокая зарплата программиста среднего уровня, так как дефицита PHP-программистов никогда не было.
Сопутствующие технологии

Zend Framework - PHP-фреймворк для создания веб-приложений, от компании, принадлежащей соавторам языка.

PEAR - внешние библиотеки, объединенные в один репозиторий.

phpMyAdmin - интерфейс для работы с MySQL. При помощи него можно через браузер запускать команды SQL, работать с таблицами и БД, администрировать сервер MySQL.

PECL - репозиторий для модулей на С для PHP.

YIi, Laravel - фреймворки на PHP, которые используют паттерн MVC при создании проекта.

Drupal, Joomla, WordPress - CMS (системы для управления контентом), написанные на PHP.

Magento, OpenCart - платформы, которые были написаны на PHP и предназначены для создания интернет-магазинов.

JPHP - компилятор PHP, которые предназначен для Java (как JRuby или JPython).

Язык PHP уверенно чувствует себя в топах самых популярных языков программирования, однако же у всего есть конец. Грозит ли PHP оказаться не у дел, что может его заменить и какой язык вы бы выбрали для создания сайта типа Facebook? На эти вопросы ответили пользователи сайта Quora .

Джордж Мауэр, преподает JS

PHP умирает, Java умирает, C# умирает, SQL умирает, JavaScript умирает, C умирает. И все равно проектов на этих языках значительно больше, чем проектов на всех неперечисленных языках программирования вместе взятых. Да, иногда новые тренды могут вытеснять что-то устоявшееся, но этот процесс происходит крайне медленно. Совсем не значит, что это самое старое - плохое.

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

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

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

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

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

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

Другим отличным выбором может стать язык Go. Главным образом это язык низкого уровня, но на нем можно делать все то же, что и на языках высокого уровня. Пусть мне и не нравятся некоторые решения касательно его структуры, но он, так или иначе, заслуживает внимания.

Еще одним вариантом может стать Clojure. Существует вероятность, что найти разработчиков на данном языке будет не так просто, но с учетом того, что этот язык - прямой потомок LISP, я могу искренне назвать его невероятно мощным и дающим множество вариантов развития.

Несколько важных замечаний:

  • присмотритесь к F# на фреймворке.Net или даже к вездесущему C#. Если вы все же выберете последний вариант, то будьте готовы к тому, что для создания отличной команды вам придется просмотреть и просеять намного большее количество резюме;
  • при помощи Scala можно творить впечатляющие вещи;
  • Node.js. Я просто обязан упомянуть Node.js. Лично я считаю, что на данный момент на вершине цепочки стоит Javascript, но Node уже долгое время также входит в список достаточно широко используемых языков. Кроме того, есть большое количество высококвалифицированных специалистов.

На этом сайте уже есть статьи о и приведены . А сейчас мы поговорим, что же такое PHP.

Что такое PHP и что с помощью него можно делать?

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

PHP — серверный язык

PHP известен, как серверный язык программирования . Это означает, что он работает на веб сервере . Большинство языков веб-программирования являются серверными языками, но некоторые, например, JavaScript, работают на стороне клиента, это означает, что они работают в веб-браузере.

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

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

PHP — программное обеспечение с открытым исходным кодом

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

PHP ориентирован на разработку веб-приложений

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

  • Считывание и обработка веб-форм и куки-файлов
  • Функции создания и работы с графикой
  • Установка связи с популярными базами данных такими, как и
  • Функции для работы с .
Вы можете смешивать PHP код с HTML-кодом

Одной из замечательных функцией PHP является то, что вы можете включить блоки PHP кода в HTML-страницы.

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

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

Использование PHP

Вы можете использовать PHP для записи практически любого типа веб-приложения или сценария. Обычные PHP приложения, включают в себя:

После прочтения статьи вы можете закрепить знания, пройдя небольшой , которые основаны на материале этой статьи. Успехов вам в освоении языка PHP!

PHP (англ. PHP: Hypertext Preprocessor -- «PHP: препроцессор гипертекста», англ. Personal Home Page Tools (устар.) -- «Инструменты для создания персональных веб-страниц») -- язык программирования, созданный для генерирования HTML-страниц на веб-сервере и работы с базами данных. В настоящее время поддерживается подавляющим большинством хостинг-провайдеров. Входит в LAMP -- распространённый набор для создания веб-сайтов (Linux, Apache, MySQL, PHP (Python или Perl)).

Группа разработчиков PHP состоит из множества людей, добровольно работающих над ядром и расширениями PHP и смежными проектами, такими как PEAR или документация языка

В области программирования для Сети, PHP -- один из популярнейших скриптовых языков (наряду с JSP, Perl и языками, используемыми в ASP.NET) благодаря своей простоте, скорости выполнения, богатой функциональности и распространению исходных кодов на основе лицензии PHP. PHP отличается наличием ядра и подключаемых модулей, «расширений»: для работы с базами данных, сокетами, динамической графикой, криптографическими библиотеками, документами формата PDF и т. п. Любой желающий может разработать своё собственное расширение и подключить его. Существуют сотни расширений, однако в стандартную поставку входит лишь несколько десятков хорошо зарекомендовавших себя. Интерпретатор PHP подключается к веб-серверу либо через модуль, созданный специально для этого сервера (например, для Apache или IIS), либо в качестве CGI-приложения.

Кроме этого, он может использоваться для решения административных задач в операционных системах GNU/Linux, Microsoft Windows, Mac OS X и других версиях ОС. Однако в таком качестве он не получил распространение, отдавая пальму первенства Perl, Python и VBScript.

В настоящее время PHP используется сотнями тысяч разработчиков. Порядка 20 миллионов сайтов сообщают о работе с PHP, что составляет более пятой доли доменов Интернета.

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

В 1994 году датский программист (ныне живущий в Канаде) Расмус Лердорф (Rasmus Lerdorf) написал набор скриптов на Perl/CGI для вывода и учёта посетителей его онлайн-резюме, обрабатывающий шаблоны HTML-документов. Лердорф назвал набор Personal Home Page (Личная Домашняя Страница). Вскоре функциональности и быстроты Perl -- интерпретатора скриптов -- перестало хватать, и Лердорф написал на языке C новый интерпретатор шаблонов PHP/FI (англ. Personal Home Page / Forms Interpreter -- «Личная Домашняя Страница / Интерпретатор форм». PHP/FI включал базовую функциональность сегодняшнего PHP: оформление переменных в стиле Perl ($имя_переменной для вывода значения), автоматическую обработку форм и встраиваемость в HTML-текст и многое другое. Новорожденный язык отличался от своего прародителя более простым и ограниченным синтаксисом.

В 1997 году после длительного бета-тестирования вышла вторая версия обработчика, написанного на C -- PHP/FI 2.0. Её использовали около 1 % (приблизительно 50 тысяч) всех интернет-доменов мира.

PHP 3.0 была первой версией, напоминающей PHP, каким мы знаем его сегодня. В 1997 году два израильских программиста, Энди Гутманс (Andi Gutmans) и Зээв Сураски (Zeev Suraski), разработчики из израильского технологического института, расположенного в Хайфе, Израиль, переписали код с нуля: PHP/FI 2.0 был сочтён ими непригодным для разработки приложения электронной коммерции, над которым они в то время работали. Для совместной работы над PHP 3.0 с помощью базы разработчиков PHP/FI 2.0 Энди, Расмус и Зив решили объединиться и объявить PHP 3.0 официальным преемником PHP/FI, разработка же PHP/FI была практически полностью прекращена.

Одной из сильнейших сторон PHP 3.0 была возможность расширения ядра. Впоследствии интерфейс написания расширений привлёк к PHP множество сторонних разработчиков, работающих над своими модулями, что дало PHP возможность работать с огромным количеством баз данных, протоколов, поддерживать большое число API. Фактически, это и был главный ключ к успеху, но стоит добавить, что немаловажным шагом оказалась разработка нового, намного более мощного и полного синтаксиса с поддержкой ООП.

Абсолютно новый язык программирования получил новое имя. Разработчики отказались от дополнения о персональном использовании, которое имелось в аббревиатуре PHP/FI. Язык был назван просто PHP.

К концу 1998 года PHP использовался десятками тысяч пользователей. Сотни тысяч веб-сайтов сообщали о том, что они работают с использованием этого языка. В то время PHP 3.0 был установлен приблизительно на 10 % веб-серверов Интернета.

PHP 3.0 был официально выпущен в июне 1998 года после 9 месяцев публичного тестирования.

PHP 4.0. К зиме 1998 года, практически сразу после официального выхода PHP 3.0, Энди Гутманс и Зив Сураски начали переработку ядра PHP. В задачи входило увеличение производительности сложных приложений и улучшение модульности базиса кода PHP. Расширения дали PHP 3.0 возможность успешно работать с набором баз данных и поддерживать большое количество различных API и протоколов, но PHP 3.0 не имел качественной поддержки модулей и приложения работали неэффективно.

Новый движок, названный Zend Engine (от имён создателей, Зива и Энди, также основателей Zend Technologies), успешно справлялся с поставленными задачами и впервые был представлен в середине 1999 года. PHP 4.0, основанный на этом движке и принёсший с собой набор дополнительных функций, официально вышел в мае 2000 года, почти через два года после выхода своего предшественника PHP 3.0. В дополнение к улучшению производительности, PHP 4.0 имел ещё несколько ключевых нововведений, таких как поддержка сессий, буферизация вывода, более безопасные способы обработки вводимой пользователем информации и несколько новых языковых конструкций.

Прекращение выпуска обновлений PHP 4 было запланировано на конец 2007 года. Однако вплоть до 8 августа 2008 года выпускались критические обновления безопасности. С 9 августа 2008 года всякая поддержка версии PHP 4.x была прекращена.

PHP 5.0. Пятая версия PHP была выпущена разработчиками 13 июля 2004 года. Изменения включают обновление ядра Zend (Zend Engine 2), что существенно увеличило эффективность интерпретатора. Введена поддержка языка разметки XML. Полностью переработаны функции ООП, которые стали во многом схожи с моделью, используемой в Java. В частности, введён деструктор, открытые, закрытые и защищённые члены и методы, окончательные члены и методы, интерфейсы и клонирование объектов. Нововведения, однако, были сделаны с расчётом сохранить наибольшую совместимость с кодом на предыдущих версиях языка. На данный момент стабильной и наиболее популярной является версии PHP 5.xx.

  • 1 августа 2008 года анонсирована первая альфа-версия PHP 5.3.0, которая содержит ряд изменений и дополнений:
    • - Пространство имен
    • - Позднее статическое связывание и специальный метод __callStatic()
    • - Анонимные функции
    • - Addition of the intl, phar (phar is scheduled for some more work a head of alpha2), fileinfo and sqlite3 extensions
    • - Optional cyclic garbage collection
    • - Optional support for the MySQLnd replacement driver for libmysql
    • - Отмена поддержки версий операционной системы до Windows 2000 (Windows 98, NT4, и.т.д.)
    • - Новые синтаксические конструкции, такие как NOWDOC, ограниченный GOTO, короткий вид тернарного оператора "?:"

PHP 6.0. Шестая версия PHP находится в стадии разработки с октября 2006 года. В ней уже сделано множество нововведений, как, например, исключение из ядра регулярных выражений POSIX и «длинных» суперглобальных массивов, удаление директив safe_mode, php_magic_quotes и register_globals из конфигурационного файла php.ini. Также много внимания уделено поддержке Юникода. Загрузить текущую версию разрабатываемого кода для GNU/Linux/BSD и скомпилированные версии для Microsoft Windows можно на сайте PHP Snapshots.

Синтаксис PHP . Синтаксис PHP подобен синтаксису языка Си. Некоторые элементы, такие как ассоциативные массивы и цикл foreach, заимствованы из Perl.

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

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

Помимо ограничителей , допускается использование дополнительных вариантов, таких как и . Кроме того, до версии 6.0 допускается использование ограничителей языка программирования ASP (конструкции и могут быть выключены в конфигурационном файле php.ini).

Имена переменных начинаются с символа $, тип переменной объявлять не нужно. В отличие от имён функций и классов, имена переменных чувствительны к регистру. Переменные обрабатываются в строках, заключённых в двойные кавычки, и heredoc-строках (строках, созданных при помощи оператора $b; // Обращение к полю a объекта, т.к. $b = "a"

$obj->$c(); // Вызов метода function_name() объекта

Суперглобальные массивы. Суперглобальными массивами (англ. Superglobal arrays) в PHP называются предопределённые массивы. Большая часть этих массивов содержит входные данные запроса пользователя (параметры GET-запроса, поля форм при посылке методом POST, куки и т. п.).

Все суперглобальные массивы кроме $GLOBALS и $_REQUEST имеют устаревшие аналоги с длинными именами, которые доступны вплоть до пятой версии PHP (в шестой версии планируется их исключение). Таким образом, обращения $_GET["year"] и $HTTP_GET_VARS["year"] идентичны.

Массив всех глобальных переменных (в том числе и пользовательских).

$_SERVER (устаревший аналог -- $HTTP_SERVER_VARS)

Содержит переменные окружения, которые операционная система передает серверу.

$_ENV (уст. $HTTP_ENV_VARS)

Текущие переменные среды (англ. Environment variables). Их набор специфичен платформы, на которой выполняется скрипт.

$_GET (уст. $HTTP_GET_VARS)

Содержит параметры GET-запроса, переданные в URI после знака вопроса «?».

$_POST (уст. $HTTP_POST_VARS)

Ассоциативный массив значений полей HTML-формы при отправки методом POST. Индексы элементов соответствуют значению атрибута name элементов управления HTML-формы.

$_FILES (уст. $HTTP_POST_FILES)

Ассоциативный массив со сведениями об отправленных методом POST файлах. Каждый элемент имеет индекс идентичный значению атрибута «name» в форме и, в свою очередь, также является массивом со следующими элементами:

["name"] -- исходное имя файла на компьютере пользователя.

["type"] -- указанный агентом пользователя MIME-тип файла. PHP не проверяет его и поэтому нет никаких гарантий что указанный тип соответствует действительности.

["size"] -- размер файла в байтах.

["tmp_name"] -- полный путь к файлу во временной папке. Файл необходимо переместить оттуда функцией move_uploaded_file. Загруженные файлы из временной папки PHP удаляет самостоятельно.

$_COOKIE (уст. $HTTP_COOKIE_VARS)

Ассоциативный массив с переданными агентом пользователя значениями кук.

Содержит элементы из массивов $_GET, $_POST, $_COOKIE. С версии PHP 4.1 включает $_FILES.

$_SESSION (уст. $HTTP_SESSION_VARS)

Содержит данные сессии.

Объектно-ориентированное программирование . PHP поддерживает широкие объектно-ориентированные возможности, полная поддержка которых была введена в пятой версии языка.

Класс в PHP объявляется с помощью ключевого слова class. Методы и поля класса могут быть общедоступными (public, по умолчанию), защищёнными (protected) и скрытыми (private). PHP поддерживает все три основные механизма ООП -- инкапсуляцию, полиморфизм и наследование (родительский класс указывается с помощью ключевого слова extends после имени класса). Поддерживаются интерфейсы (ставятся в соответствие с помощью implements). Разрешается объявление финальных, абстрактных методов и классов. Множественное наследование классов не поддерживается, однако класс может реализовывать несколько интерфейсов. Для обращения к методам родительского класса используется ключевое слово parent.

Классы в PHP имеют ряд специальных методов (англ. Magic methods), начинающихся с двух символов подчёркивания. Особо стоит отметить конструктор (__construct(), в ранних версиях конструктором служил метод, одноименный с классом) и деструктор (__destruct()), а также методы чтения (__get()) и записи (__set()), свёртывания (__sleep()) и развёртывания (__wake()), клонирования (__clone()) и др. Эти методы являются достаточно гибким инструментом: переопределяя их, можно легко добиться существенного изменения поведения объекта.

Экземпляры класса создаются с помощью ключевого слова new, обращение к полям и методам объекта производится с использованием символов ->. Для доступа к членам класса из его методов используется переменная $this.

Размещенных в сети Интернет, написано с использованием html, языка разметки гипертекста. Существенный недостаток html – отсутствие динамизма. Эту проблему и призваны решать средства программирования вроде php. Скриптовый язык создает html-страницу на лету. Php внешне очень напоминает язык программирования C. Читайте далее и вы узнаете подробно, что такое PHP для чего PHP нужен и как работает PHP…

Первый вариант языка был создан в 1994 году программистом из Дании Расмусом Лердорф ом. Первоначально сокращение расшифровывалось как Personal Home Page («Персональная домашняя страничка»). С помощью нового скриптового языка можно было .

Новый этап в развитии проекта произошел в 1997, когда был заново переписан код интерпретатора. В следующем году вышла версия 3.0, php приобрел все черты мощного языка для web-разработок. Название стали расшифровывать как PHP: hypertext Preprocessor («ПХП: гипертекстовый препроцессор»). Разработчики свободного софта любят названия, которые содержат ссылки на самих себя.

Я как ведущий и разработчик данного блога, рекомендую вам бренд WebShake: webshake.ru/php-training-course . Перейдя по ссылке, каждый желающий сможет изучить язык PHP.

Еще одна удачная версия – 5.0, она поддерживала xml и имела расширенные возможности для объектно-ориентированного программирования. Шестая версия должна была поддерживать кодировку Unicode, но получился неудачным и был заморожен. В конце 2015 года была официально запущена версия 7.0.

Как это работает

Итак, на сервере хранится страничка, написанная на php. Пользователь набирает адрес этой странички в браузере. Что происходит после нажатия клавиши Enter? Сервер пошагово исполняет команды и отправляет пользователю результат в виде html-кода. Этот код отображается в окне браузера в виде текста, картинок, видео и так далее (контент). В процессе формирования внешнего вида странички может посылать дополнительные запросы к серверу. Обратите внимание, команды не выполняются непосредственно на компьютере пользователя браузером.

Простые примеры программ

Код программы заключается в специальные ограничители: Одна из базовых команд – echo, она выводит текст в окно браузера. Пример:

Php echo "Первая строка текста
А вот и вторая строка"; ?>

В языке широко используются переменные, они бывают следующих типов:

  • Целые;
  • Строковые;
  • Булевы (истина/ложь);
  • Десятичные числа;
  • Массивы;
  • Объекты.
  • Название переменной представляет собой набор латинских букв, цифр (в конце переменной) и символа подчеркивания (не в конце переменной); помечается символом «$». Пример использования переменных разных типов:

    Над целыми и десятичными числами можно производить различные математические операции:

    • сложение (+);
    • вычитание (-);
    • умножение (*);
    • деление (/) – в результате всегда получается десятичное число;
    • остаток от деления (%).
    • Есть также операции увеличения на единицу (++) и уменьшения на единицу (—).

    Конструкции php очень напоминают аналогичные из языка C, поэтому не составит труда их освоить. Вот как выглядит применение двух разных операторов цикла для вывода последовательности чисел от 0 до 9:

    Реализация массивов отличается от аналогичной в языке C, в PHP широко применяются ассоциативные массивы (подробнее о них можно почитать ). Но никто не запрещает использовать массивы традиционным способом, например, так:

    В интерпретаторе используется множество встроенных функций – математических, строковых, для обработки времени и дат, графических и так далее. Вот неполный список . Пользователь может писать и собственные . Пример функции, которая определяет, может ли быть текстовая строка E-mail адресом:

    Познакомиться с основами языка можно .

    С чего лучше начать изучение php

    Если пользователю Windows необходимо изучить основы php, то с чего лучше начинать?

  • Скачайте (denwer).
  • Установите его. Процесс установки достаточно простой, нужно задать несколько параметров.
  • На «Рабочем столе» появятся три ярлычка. Запустите «Start Denwer».
  • На виртуальном диске (обычно он обозначается буквой Z) зайдите в каталог home, потом localhost, далее www. Удалите оттуда тестовую информацию и создайте свою программу под именем index.php.
  • Запустите браузер и наберите в адресной строке localhost. Если всё нормально – программу можно размещать на сервере.
  • Запустите «Stop Denwer».
  • Вот в принципе и все, что вам для начала нужно знать о языке программирования PHP. Если вы подписаны на мой блог, то вскоре узнаете о нем больше. До встречи!



    Есть вопросы?

    Сообщить об опечатке

    Текст, который будет отправлен нашим редакторам: