我在做一個服務器管理器。我想添加一個「kill」命令,它會調用一個基本上運行shell_exec('kill $ arrtext')的php腳本;並終止進程,從而關閉服務器。下面是返回結果和檢查,以查看哪些服務器正在運行我的腳本的一部分:將變量傳遞給另一個PHP頁面
<?php
$COMMAND = shell_exec('ps -o command ax | grep skulltag | grep -v grep');
$old = array("skulltag-server", "-port", "-iwad", "-wad", "+exec");
$new = array("SKULLTAG", "Running on Port", "Using IWAD", "+ PWAD", "with Config");
$COMMAND = str_replace($old, $new, $COMMAND);
$arr = explode("./",$COMMAND);
$text = shell_exec('pgrep -u doom');
$arrtext = preg_split('/\s+/', $text);
for($i = 1; $i < count($arr); $i++) {
echo '<div class = "serverborder">';
echo '<div class = "servertextalign">';
echo $i,'. PROCESS ID <span style="color: #f00;">',$arrtext[$i],'</span> with server parameters: <span style="color: #777;">',$arr[$i],'</span>';
echo '</div>';
echo '</div>';
echo '<br>';
}
?>
但是,我不知道我怎麼會添加一個鏈接或東西會設置正確的$ arrtext []變量(取決於他們選擇哪一個),並將其傳遞給會終止服務器的PHP腳本。
的現場演示可以在http://server.oblivionro.net/servers/
由於發現!
哦,男孩,這是危險的東西 –
這就像讓你的孩子玩交通 – horatio
我知道這是危險的,這就是爲什麼我會有一噸檢查。其他提供商爲Ventrilo和其他遊戲服務器做類似的事情,他們是否使用相同的方法?他們做什麼不同? – Ivan