win32service は Windows 限定の拡張モジュールです。サービスコントロールマネージャと
    連携してサービスの開始・停止・登録・解除を行ったり、PHP スクリプトを
    サービスとして実行させる機能を提供します。
   
    Windows NT、Windows 2000、Windows XP あるいは Windows Server 2003
    が必要です。Windows NT 系の Windows に対応しています。
   
PECL からのインストール
      http://snaps.php.net/win32/ から php_win32service.dll がダウンロード可能です。
      PHP のバージョンに一致する PECL_X_X フォルダを選択します。
     
      php_win32service.dll を extension_dir にコピーします。
     
      php.ini で拡張モジュールを読み込みます。
      
extension=php_win32service.dll  | 
     
    
例 1. PHP スクリプトをサービスとして登録する 
<?php win32_create_service(array(         'service' => 'dummyphp',                 # サービスの名前         'display' => 'sample dummy PHP service', # 説明         'params' => 'c:\path\to\script.php run', # スクリプトへのパスとパラメータ     )); ?>
 |  
  | 
   
    
例 2. サービスの登録を解除する 
<?php win32_delete_service('dummyphp'); ?>
 |  
  | 
   
    
例 3. サービスとして実行する 
<?php if ($argv[1] == 'run') {   win32_start_service_ctrl_dispatcher('dummyphp');
    while (WIN32_SERVICE_CONTROL_STOP != win32_get_last_control_message()) {     # ここに実際の作業内容を書きます。     # 1 回のループに 30 秒以上かからないように心がけてください。   } } ?>
 |  
  | 
   
以下の定数が定義されています。
この関数の拡張モジュールが PHP 組み込みでコンパイルされているか、
実行時に動的にロードされている場合のみ使用可能です。
- WIN32_SERVICE_CONTROL_CONTINUE
     (integer)
 
    
- WIN32_SERVICE_CONTROL_INTERROGATE
     (integer)
 
    
- WIN32_SERVICE_CONTROL_PAUSE
     (integer)
 
    
- WIN32_SERVICE_CONTROL_STOP
     (integer)
 
    
- WIN32_SERVICE_CONTROL_HARDWAREPROFILECHANGE
     (integer)
 
    
- WIN32_SERVICE_CONTROL_POWEREVENT
     (integer)
 
    
- WIN32_SERVICE_CONTROL_SESSIONCHANGE
     (integer)
 
    
- WIN32_ERROR_CALL_NOT_IMPLEMENTED
     (integer)
 
    
- WIN32_NO_ERROR
     (integer)
 
    
- WIN32_SERVICE_RUNNING
     (integer)
 
    
- WIN32_SERVICE_STOPPED
     (integer)
 
    
- WIN32_SERVICE_STOP_PENDING
     (integer)
 
    
- WIN32_SERVICE_WIN32_OWN_PROCESS
     (integer)
 
    
- WIN32_SERVICE_INTERACTIVE_PROCESS
     (integer)
 
    
- WIN32_SERVICE_STOPPED
     (integer)
 
    
- WIN32_SERVICE_START_PENDING
     (integer)
 
    
- WIN32_SERVICE_STOP_PENDING
     (integer)
 
    
- WIN32_SERVICE_RUNNING
     (integer)
 
    
- WIN32_SERVICE_CONTINUE_PENDING
     (integer)
 
    
- WIN32_SERVICE_PAUSE_PENDING
     (integer)
 
    
- WIN32_SERVICE_PAUSED
     (integer)
 
    
- WIN32_SERVICE_ACCEPT_NETBINDCHANGE
     (integer)
 
    
- WIN32_SERVICE_ACCEPT_PARAMCHANGE
     (integer)
 
    
- WIN32_SERVICE_ACCEPT_PAUSE_CONTINUE
     (integer)
 
    
- WIN32_SERVICE_ACCEPT_SHUTDOWN
     (integer)
 
    
- WIN32_SERVICE_ACCEPT_STOP
     (integer)
 
    
- WIN32_SERVICE_ACCEPT_HARDWAREPROFILECHANGE
     (integer)
 
    
- WIN32_SERVICE_ACCEPT_POWEREVENT
     (integer)
 
    
- WIN32_SERVICE_ACCEPT_SESSIONCHANGE
     (integer)
 
    
- WIN32_SERVICE_FILE_SYSTEM_DRIVER
     (integer)
 
    
- WIN32_SERVICE_KERNEL_DRIVER
     (integer)
 
    
- WIN32_SERVICE_WIN32_SHARE_PROCESS
     (integer)
 
    
- WIN32_SERVICE_RUNS_IN_SYSTEM_PROCESS
     (integer)