2012-09-28 61 views
0

我有一个php bot脚本,永远加载直到它死亡。所以我想用exec()启动其他人的机器人,但他们的机器人工作,但地雷停止响应。我怎样才能启动一个新的PHP窗口中的机器人,所以我的机器人不会冻结?在新窗口中执行

我的代码:

exec("php ".$input.".php"); 
+0

什么是“PHP窗口”?你只需要分叉一个新的过程?如果是这样,这可能是一个开始的好地方:http://php.net/manual/en/function.pcntl-fork.php – David

+0

是的,一个新的过程。什么是这样做的代码,我找不到你给我的网页。我想尝试执行('开始'窗口标题“”PHP的 – user1691356

回答

1

这是一个可怕的解决方案,但如果你在Windows计算机上本地运行脚本,你可以使用类似:

exec('start "Window Title" "php" "script_name.php"');

从那里,其他每个脚本都将在他们自己的分离进程中运行。缺点是你的父母脚本不能“杀死”他们。他们必须自行终止,否则您将不得不手动终止他们。

+1

将是'exec(“php”。$ input。“。php &");' – xception

+0

你可以把代码放在一个例子让我们说开始test.php – user1691356

+0

我试过exec “”new.php“');但是我的主要僵尸程序冻结了 – user1691356

0

PHP没有每个说“新窗口”,这将是一个问题的JavaScript。您可以使用下面的语法打开Javascript中一个新的窗口:

window.open(URL,name,specs,replace) 

我建议在新窗口中打开一个PHP文件,并有该文件包含您的exec()命令是在里面。 Check out more information on the specifics of this Javascript method here.

+0

我曾经想过,它没有工作 – user1691356

+0

你到底想要做什么呢?也许你应该延迟执行你的exec( )'方法 – cereallarceny

+0

我想在一个新的pid /新窗口中启动它 – user1691356