dismiss Step into the future! Click here to switch to the beta php.net site
downloads | documentation | faq | getting help | mailing lists | licenses | wiki | reporting bugs | php.net sites | conferences | my php.net

search for in the

win32_continue_service> <Examples
[edit] Last updated: Fri, 28 Jun 2013

view this page in

win32service Functions

Table of Contents



add a note add a note User Contributed Notes win32service Functions - [2 notes]
up
0
brian dot ngure at gmail dot com
3 years ago
An example of how it should be done:

<?php

class TestClass {
    private
$args;

    function
__construct($arg) {
       
$this->args = $arg;
       
$this->run();
    }

    private function
run() {
        if (
$this->args == 'run') {
           
win32_start_service_ctrl_dispatcher('test_service');

            while (
WIN32_SERVICE_CONTROL_STOP != win32_get_last_control_message()) {
               
# do your work here.
                # try not to take up more than 30 seconds before going around the loop
                # again
           
}
        }
    }
}

$object = new TestClass($argv[1]);

?>
up
0
me at sylvain tiret besse point fr
5 years ago
Just to help a little, the service control command must be in the first script called. If you try to type this portion of code in a separate file and include it, the SCM will not get the controls.
example :

- file1.inc :
<?PHP
class MyClass{
 
 function
__construct() {

   
$x = win32_start_service_ctrl_dispatcher('service');

   
    while (
WIN32_SERVICE_CONTROL_STOP!=win32_get_last_control_message()){
       
//your code
 
}
}
?>

- service.php :
<?PHP
include("file1.inc");
$object = new MyClass();

?>

WON'T WORK !

 
show source | credits | stats | sitemap | contact | advertising | mirror sites