我正在尝试编写一些PHP,它运行在一个文件夹中,获取每个子目录名并将其分配给一个变量。然后,打开一个带有该变量的URL。
例如,D:Folder包含许多名为1-??的子文件夹??。
PHP将首先打开www.url.com/run_batch.PHP?q=1并睡眠30秒,然后访问www.url.com/run_batch.php?对于主目录中的每个子目录。
我目前正在尝试写这篇文章。我还没有太多的代码,但我认为你们中的一个天才可以帮助我加快这个过程。
更新
好吧,这是我到目前为止所拥有的,它运行时没有任何错误,但它似乎在不睡觉的情况下同时运行所有错误?不确定,页面一直很忙。
<?php
if ($handle = opendir('D:'HTTP'pic'')) {
$blacklist = array('.', '..', 'bu');
while (false !== ($file = readdir($handle))) {
if (!in_array($file, $blacklist)) {
echo "<iframe width='800' height='600' src='http://www.url.com/run_batch.php?q=" . "$file" . "'></iframe>";
sleep(100);
}
}
closedir($handle);
}
?>
当您在PHP代码中休眠时,HTML不会发送到浏览器,这就是它看起来很忙的原因。
每次通过都必须调用flush()。
<?php
if ($handle = opendir('D:'HTTP'pic'')) {
$blacklist = array('.', '..', 'bu');
while (false !== ($file = readdir($handle))) {
if (!in_array($file, $blacklist)) {
echo "<iframe width='800' height='600' src='http://www.url.com/run_batch.php?q=" . "$file" . "'></iframe>";
//Send content to browser
flush();
sleep(100);
}
}
closedir($handle);
}
?>
我建议您从伪代码开始;为步骤创建注释。从那里,查看PHP.net以获得有关特定任务的帮助。当你有一些可行但有缺陷的东西时,粘贴你的代码。
伪码:
// get directory list
// loop through directories
// ...
// redirect to next page