Справочник от Автор24
Найди эксперта для помощи в учебе
Найти эксперта
+2

PHP-приложение

Определение 1

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

Введение

Обычно язык PHP используется для web-разработок, однако необходимо заметить, что при этом PHP имеет обширный арсенал различных функций и инструментов, которые можно применять не только при создании сайтов. PHP-скрипты позволяют создавать полноценные приложения для Windows в форме стандартных и общеизвестных EXE-файлов. Для PHP4 в свое время были разработаны интересные программы, такие как Roadsend Compiler Studio и Bambalam PHP EXE Compiler, которые могли делать из скриптов консольные приложения. Существовали даже такие инструменты, как PHP-GTK и WinBlider, которые позволяли создать на PHP программы, имеющие графический оконный интерфейс. Сегодня, как ни печально, данные проекты уже не работают.

PHP-приложение

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

php.exe -f скрипт.php

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

Рассмотрим, например, вариант, когда PHP-приложение находится в единственном скрипте index.php. Необходимо сначала запустить архиватор, создать новый архив, добавить в него файл скрипта, а из папки, где установлен PHP, нужно взять два файла, а именно:

php.exe и php5ts.dll.

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

«PHP-приложение» 👇
Помощь эксперта по теме работы
Найти эксперта
Решение задач от ИИ за 2 минуты
Решить задачу
Помощь с рефератом от нейросети
Написать ИИ

Окно программы. Автор24 — интернет-биржа студенческих работ

Рисунок 1. Окно программы. Автор24 — интернет-биржа студенческих работ

А на следующей вкладке следует открыть дополнительные параметры архива для их настройки:

Окно программы. Автор24 — интернет-биржа студенческих работ

Рисунок 2. Окно программы. Автор24 — интернет-биржа студенческих работ

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

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

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

[PHP]

extension_dir = "."

extension=php_curl.dll

Его нужно упаковать совместно с расширениями в этот же архив. Следует отметить, что подобные комплекты наиболее удобно собрать в отдельной папке, где можно сразу проверить работоспособность скрипта, а также проверить присутствие всех зависимых библиотек и расширений. К примеру, показанное выше расширение php_curl может повлечь за собой еще и библиотеки libeay32.dll, libssh2.dll и ssleay32.dll, которые также необходимо не забыть включить в архив.

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

Более удобным вариантом для создания приложений из PHP-скриптов является коммерческая утилита MoleBox. Она способна упаковать целое приложение в контейнер в формате единого exe-файла. Вместе с основным выполняемым файлом в контейнер следует поместить требуемые для его функционирования библиотеки и другие файлы. Несколько лет назад проект MoleBox был закрыт, однако утилита доступна к использованию.

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

Окно программы. Автор24 — интернет-биржа студенческих работ

Рисунок 3. Окно программы. Автор24 — интернет-биржа студенческих работ

В настройках проекта в качестве основного выполняемого файла следует выбрать php.exe, из него же извлечется иконка для итогового файла. В параметрах командной строки необходимо указать имя запускаемого скрипта и дополнительный ключ , означающий, что помимо имени скрипта нужно переслать на обработку параметры, которые переданы файлу приложения. Для работы с параметрами командной строки в PHP предусматриваются две предустановленные переменные. В целочисленной переменной $argc$ должно содержаться число передаваемых параметров, а в массиве $argv$ должны храниться сами параметры.

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

Дата написания статьи: 02.03.2022
Найди решение своей задачи среди 1 000 000 ответов
Крупнейшая русскоязычная библиотека студенческих решенных задач
Все самое важное и интересное в Telegram

Все сервисы Справочника в твоем телефоне! Просто напиши Боту, что ты ищешь и он быстро найдет нужную статью, лекцию или пособие для тебя!

Перейти в Telegram Bot