PHPRunner can build and package desktop applications as well as web applications. These applications can be installed on any Windows machine and require no Internet connection to set up.
Here is an example of a PHPRunner desktop application:
To make a new application, click Create desktop app after building the project.
If your desktop application displays an error message, check the PHP Desktop knowledge base for additional info. Look up the error message and take the suggested steps.
How it works
First of all, the Desktop app functionality is built on top of the open-source PHP Desktop project. PHP Desktop packages the following software components together:
When you start the PHP Desktop application, it starts the webserver specifying the www directory as the website root folder. Then it starts the Chrome browser and points to the home page of the webserver. The browser is modified to hide the menus, navigation buttons, and address bar. You only see the application itself.
PHPRunner takes one extra step packaging the whole application into a single installation file using Inno Setup. The whole packaging process is described in the Create Your First Desktop Application With PHP And PHP Desktop tutorial.
PHP Desktop runs on Windows only.
PHP Desktop works with PHP only.
•The installer is not signed;
If you want to make the desktop version of your app available worldwide, you need to sign the installer.
•Internet connectivity is required for remote database applications;
The desktop application is no different from the web application in terms of the database connection. If your application uses a remote database, you do need an Internet connection to work with the database.
Some typical use cases for the desktop applications
•You are a PHP developer who needs to create a desktop application. The best choice is to use SQLite or MS Access database in this case.
•You need to create an application that doesn't use the database at all. For example, the Euro 2016 desktop application. It connects to the football-data.org API, retrieves the data, and displays it. You don't need a website or a database in this scenario.
•You need access to the hardware or file system. Using a desktop app, you can access the devices connected to the end-user machine, work with the file system, use COM objects, etc. You can do everything the typical desktop application can.
•You can use your desktop application to connect to the remote database. When you do not have a website or do not want to maintain a website - all you have is a database like MySQL or Amazon RDS with remote access. In this case, the desktop application can be useful as well.