Чат PHP-разработчиков
Как работает PHP

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

Приветствую! В этом уроке мы разберём, что же из себя представляет PHP, как он работает и для чего он предназначен.

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

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

PHP не работает сам по себе. Для работы с пользователем он должен быть настроен в связке с веб-сервером, например, Nginx или Apache. Если по-простому, то пользователь отправляет запрос к веб-серверу по протоколу HTTP. Веб-сервер определяет, к какому типу файла было совершено обращение, и, если это файл с расширением .php, то веб-сервер передаёт запрос на обработку интерпретатором языка PHP, скрипт считывается, преобразуется в байт-код, выполняется и возвращает ответ веб-серверу. Веб-сервер передаёт сформированный результат пользователю. Этот результат, как правило, представляет собой динамически сгенерированную HTML-страничку.

Этот процесс можно значительно ускорить, подключив расширение-акселератор. Оно занимается тем, что кэширует получившийся байт-код, и пока файл остаётся неизменным сразу начинается его выполнение. Начиная с версии PHP 5.6 акселератор OPcache включён в дистрибутив по умолчанию.

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

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

Готовое решение в качестве сервера, которое я всем советую использовать, называется OpenServer. О том, как его установить и запустить, мы поговорим в следующем уроке.

Присоединяйтесь к нам в ВКонтакте и в Facebook, чтобы не пропустить новые уроки. А также вступайте в наш чат PHP-разработчиков в Telegram.
Домашнее задание

Напишите в комментариях, в чём отличия программ на языке PHP от обычных "оконных" программ.

Онлайн обучение PHP
Путь с полного нуля до джуниора!
Начать бесплатно
Читайте также
Курс программирования на PHP
Подготовка до уровня устройства на работу!
Начать бесплатно
Комментарии (55)


Dilik

ухххх я прям в предчувствии))

mvaunsahara@gmail.com

Основные отличия программ на PHP от обычных "оконных" программ:

  1. Работа программ на PHP осуществляется с сервера "невидимо" без возможности для пользователя управления ими во время выполнения;
  2. PHP не работает сам по себе, для работы с пользователем он должен быть настроен в связке с веб-сервером;
  3. PHP содержит много инструментов для работы с запросами, базами данных и файлами.
ivashkevich

Да, всё правильно =)

Nikita3712

PHP должен работать вместе с веб сервером ( на десктопе - open server )
В нете - nginx, apache

ivashkevich

Все верно

MrElektron

PHP в отличие от оконных программ исполняется неявно и непрограммист даже не поймёт, что что-то выполнилось.

ivashkevich

И так тоже можно сказать)

Snappy

Php работает в связке с nginx,apache

Starosta

PHP работает на стороне сервера и не заметный для обычного пользователя.

Summers

PHP работает вместе с веб-сервером (у Никиты списала)

Anatoliy

PHP выполняется на сервере, нет исполнительно файла

ivashkevich

Исполняемый файл всё же есть - это php-файл

N9PIX

Работа программ PHP отличается об обычных "оконных" программ тем, что работает "невидимо" и без возможности управлением пользователем во время выполнения задачи.

maksatkj@mail.ru

Оконные программы работает на компе пользователя, а РНР в веб-сервере

ivashkevich

Правильно

SashkoUkraine

Отличие в том что пжп выполняется "где-то" на стороне сервером, при помощи обработчиков. На выходе получаем понятный для нас жтмл.

this.is.ira.home@gmail.com

1.Программа работает на сервере и мы этого не видим в окне.
2.Главное отличие от остальных программ - получает запрос от пользователя, обрабатывает и тут-же отдает пользователю результат( чем быстрее - тем лучше), не висит в памяти ожидая действия - работает в реальном времени.

ivashkevich

Очень развернуто и прямо в точку)

Boleslav

Работает на стороне сервера.

fapchat2@gmail.com

php должен интерпретировать код, и запросы пользователя отдаются какому-то сервису, который чмтает файл, интерпретируя код с помощью php, а потом отдавая результат пользователю.

Uzumeti

В чём отличия программ на языке PHP от обычных "оконных" программ:

Вижу только одно фундаментальное отличие - обработка запроса происходит на стороне сервера, что ускоряет работу устройства пользователя (т.к. оперативка свободная).

ivashkevich

И это тоже верно

stalker66.production@gmail.com

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

90auto90@gmail.com

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

titova2869@mail.ru

Наталья.
эта программа должна принимать запрос от пользователя, сделать какие-то действия, отдать пользователю результат и после этого завершиться. И чем быстрее она отработает, тем лучше.
PHP не работает сам по себе. Для работы с пользователем он должен быть настроен в связке с веб-сервером, например, Nginx или Apache.

igor_vile@mail.ru

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

ya.kcenechka@gmail.com

PHP работает в связке с вебсервером и не висит постоянно в фоне.

safr0novilya@yandex.ru

Он работает "невидимо"
Ему нужен веб-сервер

solomka2009@yandex.ru

Отличительные особенности PHP:

  1. В отличие от оконных программ программы PHP в большинстве случаев "невидимы", не висят в памяти ожидая действий пользователя или каких-либо "оповещений", а принимают на сервере запрос пользователя, исполняют его на сервере, передают пользователю результат и завершаются.
  2. Обязательно работают в связке с веб-сервером.
  3. В отличие от обычного интерпретатора современные версии PHP имеют расширение-акселератор, кэширующие байт-код, в результате чего не требуется многократной компиляции исходного текста пока он остается неизменным.
  4. PHP содержит большой инструментарий для работы с запросами, базами данных, с файлами. Имеются современные IDE средства разработки, к примеру PhpStorm.
ivashkevich

Очень развернуто и всё в точку)

Normone

Основные вычисления происходят на сервере.

m_ivanovskiy@ukr.net

Программа РНР должна принимать запрос от пользователя, сделать какие-то действия, отдать пользователю результат и после этого завершиться.

kravchenko.mv@miacmo.ru

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

kap864@yandex.ru

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

ivashkevich

Это правда)

wambot
  • Пользователь не может вмешаться в работу программы, во время её выполнения.
  • PHP невидим для пользователя, он видит лишь результат его работы.
  • Для работы PHP обязательно нужен web сервер
0teaprophet0@gmail.com

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

Самый понятный курс PHP
Онлайн-уроки в удобное время!
Начать бесплатно
Популярное за сутки
Онлайн-курсы PHP и MySQL
Обучение с полного нуля до уровня джуниора!
Начать бесплатно
Сейчас читают
Онлайн-курсы PHP и MySQL
Обучение с полного нуля до уровня джуниора!
Начать бесплатно
Новые статьи
Логические задачи с собеседований