0
我需要以正确的顺序运行几个PHP脚本(它们通过OAuth解析和检索一些数据),ONE之后的另一个,等待前一个脚本完成(脚本2需要在script1等之后解析数据...)。从脚本中调用并运行php脚本
例如:
从mainscript.php
script1.php -> COMPLETED -> script2-php -> COMPLETED -> script3.php -> ....
我打电话脚本用下面的代码:
<?php
echo '<br /><br />SCRIPT 1<br /><br /> ';
include ("script1.php");
set_time_limit(0);
$seconds = 5; // HERE I PUT 5 SECONDS BECAUSE I THINK ITS THE RIGHT TIME TO RUN PARSING
sleep($seconds);
echo '<br /><br />SCRIPT 2<br /><br />';
include ("script2.php");
set_time_limit(0);
$seconds = 5; // HERE I PUT 5 SECONDS BECAUSE I THINK ITS THE RIGHT TIME TO RUN PARSING
sleep($seconds);
echo '<br /><br />SCRIPT 3<br /><br /> ';
include ("script3.php");
set_time_limit(0);
$seconds = 5; // HERE I PUT 5 SECONDS BECAUSE I THINK ITS THE RIGHT TIME TO RUN PARSING
sleep($seconds);
echo '<br /><br />SCRIPT 4<br /><br /> ';
include ("script4.php");
?>
所以我的问题是:是否有意义把set_time_limit
睡成mainscript.php
,或INCLUDE
函数依次调用正确顺序的每个脚本?你能提供一个解决方案,一个建议吗?
在运行第一个脚本之后,您正在运行睡眠命令**。在大多数情况下,PHP是同步的(不会同时运行)(我认为一些PHP 5.3函数具有异步回调),因此没有理由在此处执行“睡眠”。 [有关如何执行异步PHP作业的帮助,请看这里](http://stackoverflow.com/questions/124462/asynchronous-php-calls)。 – h2ooooooo
@ h2ooooooo谢谢,所以我的代码是正确的,没有睡觉?并且我确信脚本会加载到SUCCESSION中? – Huxley
是的,除非您在子PHP文件中使用异步命令(例如'exec',在某些情况下,它不会等到脚本完成),那么是的,您不需要睡眠命令,因为代码在达到该点时已经运行。 – h2ooooooo