【PHP】通过PHP开启/暂停Apache、MySQL或其他服务

目录

一、前言

二、代码


一、前言

有些时候我们需要开启或暂停一些服务,比如说开启Apach或暂停MySQL服务等,最近工作中也开发了这方面的功能,记录下来怎样使用PHP语言来开启或暂停Apache、MySQL服务的运行状态。

这种方法也适用其他服务。

如果想了解怎么实时监控服务的运行状态,可以看上一篇文章

【PHP】通过PHP实时监控Apache、MySQL服务运行状态-CSDN博客

二、代码

有三个参数需要根据实际情况修改:

① 服务状态:start 或 stop

② 要操作的服务的路径

③ 要操作的服务的名称

当然也可以改成其他服务

php 复制代码
public function putStatus()
{
	
	$status = 'stop';	//暂停服务
	// $status = 'start';	//开启服务
	
	// 要操作的服务
	$processPath = "E:\phpstudy_pro\Extensions\MySQL5.7.26\bin\mysql.exe";
	$processName = 'mysql'

	if ($status == 'stop') {

		// 使用taskkill命令终止进程,通过进程名来查找  
		$command = "taskkill /F /IM $processName";  
		exec($command, $output, $returnValue);  
		if ($returnValue === 0) {  
			return apiResponse('200','操作成功');
		} else {  
			return apiResponse('110','操作失败');
		}  
	}elseif ($status == 'start') {


		// 执行外部命令启动一个进程
		$command = $processPath; // 替换为你的程序路径  
		exec($command, $output, $return_var);  
		  
		if ($return_var === 0) {  
			return apiResponse('200','操作成功'); 
		} else {  
			return apiResponse('110','操作失败');
		}  
	}

}
相关推荐
BingoGo18 小时前
当你的 PHP 应用的 API 没有限流时会发生什么?
后端·php
JaguarJack18 小时前
当你的 PHP 应用的 API 没有限流时会发生什么?
后端·php·服务端
于眠牧北2 天前
MySQL的锁类型,表锁,行锁,MVCC中所使用的临键锁
mysql
BingoGo2 天前
OpenSwoole 26.2.0 发布:支持 PHP 8.5、io_uring 后端及协程调试改进
后端·php
JaguarJack2 天前
OpenSwoole 26.2.0 发布:支持 PHP 8.5、io_uring 后端及协程调试改进
后端·php·服务端
JaguarJack3 天前
推荐 PHP 属性(Attributes) 简洁读取 API 扩展包
后端·php·服务端
BingoGo3 天前
推荐 PHP 属性(Attributes) 简洁读取 API 扩展包
php
Turnip12023 天前
深度解析:为什么简单的数据库"写操作"会在 MySQL 中卡住?
后端·mysql
JaguarJack4 天前
告别 Laravel 缓慢的 Blade!Livewire Blaze 来了,为你的 Laravel 性能提速
后端·php·laravel
郑州光合科技余经理4 天前
代码展示:PHP搭建海外版外卖系统源码解析
java·开发语言·前端·后端·系统架构·uni-app·php