php自动运行 win32service功能
该win32service扩展是Windows专用的扩展,它允许PHP的沟通与服务控制管理器启动,停
止,注册和注销服务,甚至可以让你的PHP脚本作为服务运行
config.php
<;?PHP
/*
* 功能:利用PHP安装windows自动运行的服务
* 作者:LiangJQ
* 时间:2008年3月7日
*/
//定义服务名称
define
(
";
_SERVICENAME
";
,
";
PHP Service
";
)
;
//定义服务显示名称
define
(
";
_SERVICEINFONAME
";
,
";
Exsample PHP Service
";
)
;
//定义php.exe存放路径
define
(
";
_PATH
";
,
";
C:\wamp\php\php.exe
";
)
;
//定义所要执行的程序名称
define
(
";
_PARAMS
";
,
";
D:
\\
localhost
\\
Service
\\
win32_service.php
";
)
;
//定义程序分隔执行时间,单位:秒
define
(
";
_SLEEP
";
,
5
)
;
?>;
index.php
<;?php
/*
* 功能:利用PHP安装windows自动运行的服务
* 作者:LiangJQ
* 时间:2008年3月7日
*/
require_once
";
Config.php
";
;
//查看服务状态
$svcStatus
=
win32_query_service_status
(
_SERVICENAME
)
;
if
(
$svcStatus
==
1060
){
echo
";
服务 [
";
.
_SERVICENAME
.
";
] 未被安装
";
;
}
else
{
echo
";
服务 [
";
.
_SERVICENAME
.
";
] 已经安装
";
;
echo
";
服务状态:
";
;
switch
(
$svcStatus
[
'
CurrentState
'
]){
case
1
:
echo
";
未启动
";
;
break
;
case
4
:
echo
";
已启动
";
;
break
;
default
:
break
;
}
}
echo
'
<;ul>;
<;li>;<;a href=";install_service.php";>;安装服务<;/a>;<;/li>;
<;li>;<;a href=";uninstall_service.php";>;移除服务<;/a>;<;/li>;
<;li>;<;a href=";start_service.php";>;开始服务<;/a>;<;/li>;
<;li>;<;a href=";stop_service.php";>;停止服务<;/a>;<;/li>;
<;li>;<;a href=";restart_service.php";>;重启服务<;/a>;<;/li>;
<;/ul>;
<;p>;
'
;
?>;
install_service.php
<;?php
/*
* 功能:利用PHP安装windows自动运行的服务
* 作者:LiangJQ
* 时间:2008年3月7日
*/
require_once
";
Config.php
";
;
//注册服务
$x
=
win32_create_service
(
array
(
'
service
'
=>;
_SERVICENAME
,
'
display
'
=>;
_SERVICEINFONAME
,
'
path
'
=>;
_PATH
,
'
params
'
=>;
_PARAMS
,
))
;
//启动服务
win32_start_service
(
_SERVICENAME
)
;
if
(
$x
!==
true
){
die
(
'
服务创建失败!
'
)
;
}
else
{
die
(
'
服务创建成功!
'
)
;
}
?>;
restart_service.php
<;?php
/*
* 功能:利用PHP安装windows自动运行的服务
* 简介:重启服务
* 作者:LiangJQ
* 时间:2008年3月7日
*/
require_once
";
Config.php
";
;
//重启服务
$svcStatus
=
win32_query_service_status
(
_SERVICENAME
)
;
if
(
$svcStatus
==
1060
){
echo
";
服务 [
";
.
_SERVICENAME
.
";
] 未被安装,请先安装
";
;
}
else
{
if
(
$svcStatus
[
'
CurrentState
'
]
==
1
){
$s
=
win32_start_service
(
_SERVICENAME
)
;
if
(
$s
!=
0
){
echo
";
服务无法被启动,请重试~
";
;
}
else
{
echo
";
服务已启动!
";
;
}
}
else
{
$s
=
win32_stop_service
(
_SERVICENAME
)
;
if
(
$s
!=
0
){
echo
";
服务正在执行,请重试~
";
;
}
else
{
$s
=
win32_start_service
(
_SERVICENAME
)
;
if
(
$s
!=
0
){
echo
";
服务无法被启动,请重试~
";
;
}
else
{
echo
";
服务已启动!
";
;
}
}
}
}
?>;
start_service.php
<;?php
/*
* 功能:利用PHP安装windows自动运行的服务
* 简介:启动服务
* 作者:LiangJQ
* 时间:2008年3月7日
*/
require_once
";
Config.php
";
;
//启动服务
$s
=
win32_start_service
(
_SERVICENAME
)
;
if
(
$s
!=
0
){
//1056
echo
";
服务正在运行中~
";
;
}
else
{
echo
";
服务已启动!
";
;
}
?>;
stop_service.php
<;?php
/*
* 功能:利用PHP安装windows自动运行的服务
* 简介:停止服务
* 作者:LiangJQ
* 时间:2008年3月7日
*/
require_once
";
Config.php
";
;
//停止服务
$s
=
win32_stop_service
(
_SERVICENAME
)
;
if
(
$s
!=
0
){
//1062
echo
";
服务未启动~
";
;
}
else
{
echo
";
服务已停止~
";
;
}
?>;
uninstall_service.php
<;?php
/*
* 功能:利用PHP安装windows自动运行的服务
* 简介:移除服务
* 作者:LiangJQ
* 时间:2008年3月7日
*/
require_once
";
Config.php
";
;
//移除服务
$removeService
=
win32_delete_service
(
_SERVICENAME
)
;
switch
(
$removeService
)
{
case
1060
:
die
(
'
服务不存在~
'
)
;
break
;
case
1072
:
die
(
'
服务不能被正常移除!
'
)
;
break
;
case
0
:
die
(
'
服务已被成功移除~
'
)
;
break
;
default
:
die
()
;
break
;
}
?>;
win32_service.php
<;?php
/*
* 功能:利用PHP安装windows自动运行的服务
* 简介:自动执行程序
* 作者:LiangJQ
* 时间:2008年3月7日
*/
require_once
";
Config.php
";
;
//检测服务是否存在
if
(
!
win32_start_service_ctrl_dispatcher
(
_SERVICENAME
))
{
die
(
";
没有发现正在运行的 [
";
.
_SERVICENAME
.
";
] 服务
";
)
;
}
//如果运行中
while
(
WIN32_SERVICE_CONTROL_STOP
!=
win32_get_last_control_message
())
{
//写入文件
for
(
$i
=
1
;
$i
<;=
1
;
$i
++
){
$b_file_path
=
";
D:
\\
localhost
\\
test.txt
";
;
$f
=
fopen
(
$b_file_path
,
'
a+
'
)
;
$msg
=
'
Dernier backup correctement:
'
.
date
(
'
y/m/d h:i:s
'
)
;
fwrite
(
$f
,
$msg
.
";
\r\n
";
)
;
fclose
(
$f
)
;
sleep
(
1
)
;
}
}
?>;
本文档为【php自动运行 win32service功能】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑,
图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
该文档来自用户分享,如有侵权行为请发邮件ishare@vip.sina.com联系网站客服,我们会及时删除。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。
本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。
网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。