Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Run a php script as a background process in wamp server

I have two php scripts that need to be run as continuous back ground processes in WAMP server.

Wamp server is installed in window 7 PC. These scripts are already reside in separate folder in the www root directory.

Apache Version :2.2.8
PHP Version :5.2.6

Since this is not a unix platform I can't use nohup php script.php > /dev/null & command to do this job. I'm looking for similar kind of command or method which works in wamp server windows platform.

Can anyone explain the steps I need to be taken to do this task?

like image 733
Lahiru Ruhunage Avatar asked Nov 20 '10 06:11

Lahiru Ruhunage


People also ask

Can PHP run in the background?

In PHP, we can not directly run any process job in the background even if the parent job terminates.

Is WAMP server is used to execute PHP script?

PHP Server installation (Wamp Server) As we already know that php is a server side scripting language so we need server to run php code. There are many servers to run php program. If you are using Windows Operating System then you can install WMAP server which stands for Windows Apache MySql and PHP or Perl or python.


2 Answers

  1. create a batch file to run your php script using php executable "C:\wamp\php\php.exe C:\wamp\www\index.php"
  2. add this batch file in Scheduled Task in Windows control panel.
like image 190
Imran Naqvi Avatar answered Oct 06 '22 23:10

Imran Naqvi


Simply use this function. It works under both OSs (Windows and Linux):

function execInBackground($cmd){
    if (substr(php_uname(), 0, 7) == "Windows"){ 
        pclose(popen("start /B ". $cmd, "r"));  
    }else{ 
        exec($cmd . " > /dev/null &");   
    } 
} 

Here is an easy example of how to use the function:

execInBackground('php feed/handleFeed.php db_name '.$second_param);

In above example, we start script handleFeed.php that is located in folder named "feed" and we pass 2 parameters (database name and some other second parameter).

like image 25
Dejv Avatar answered Oct 06 '22 23:10

Dejv