John Davidson

How to create a windows service that runs a PHP script?


I have a PHP application that is connected to MS SQL and it runs a script, based on the time that is stored in the database, to execute a particular query of another database server.
database has a query column and the Next time of execution i.e. 1 pm
Php Script keeps running through the windows service
It keeps checking the current time, if it matches the next time of execution, it executes the query.

My question is, how can I set up this PHP application under a windows service?

Note: we don't want to use the cron job since it's not a web application
We have tried using PHP win32_create_service but it does not work.
Windows task scheduler has a limit of 5 mins as the lowest time. We might have some tasks which will need to be executed in every 1 minute too.

My Answer:
To create a Windows service that runs a PHP script, you can use a tool like NSSM (Non-Sucking Service Manager) which allows you to easily create and manage Windows services. Here's how you can set up your PHP application as a Windows service using NSSM:

1. Download NSSM from the official website and extract the files to a folder on your computer.

2. Open a command prompt with administrative privileges and navigate to the folder where you extracted NSSM.

3. Run the following command to install your PHP application as a Windows service:

nssm install

Replace `` with the name you want to give to your service, `` with the path to the PHP executable (php.exe), and `` with the path to your PHP script.

4. Once the service is installed, you can start it by running the following command:

nssm start

5. You can also configure the service to run automatically on system startup by running the following command:


6. To stop the service, run the following command:

nssm stop

7. You can also configure the service to run at specific intervals by modifying your PHP script to check the current time and execute the query based on the time stored in the database.

By following these steps, you can create a Windows service that runs your PHP script and executes the query at the specified time intervals.

Rate this post

3 of 5 based on 1291 votes


© 2024 - Personal Blogs Platform. All Rights Reserved.
Create blog  |  Privacy Policy  |  Terms & Conditions  |  Contact Us