使用php检查多个文件,如果不存在,则创建该文件

使用php检查多个文件,如果不存在,则创建该文件,php,Php,我有一个php脚本,可以检查这5个文件是否存在 文件1、文件2、文件3、文件4、文件5按顺序排列 如果存在文件1,则检查文件2 如果存在文件2,则检查文件3 如果存在文件3,则检查文件4 如果存在文件4,则检查文件5 如果任何文件不存在,则创建该文件;如果所有文件都存在,则休眠几秒钟,直到删除其中一个文件,然后在执行代码之前创建该文件 我有我的逻辑清楚,但我不能把代码付诸行动 下面是我的代码 while(file_exists("/var/tmp/test/" . $tempfile) &

我有一个php脚本,可以检查这5个文件是否存在 文件1、文件2、文件3、文件4、文件5按顺序排列

如果存在文件1,则检查文件2 如果存在文件2,则检查文件3 如果存在文件3,则检查文件4 如果存在文件4,则检查文件5

如果任何文件不存在,则创建该文件;如果所有文件都存在,则休眠几秒钟,直到删除其中一个文件,然后在执行代码之前创建该文件

我有我的逻辑清楚,但我不能把代码付诸行动

下面是我的代码

while(file_exists("/var/tmp/test/" . $tempfile) && file_exists("/var/tmp/test/" . $tempfile2) && file_exists("/var/tmp/test/" . $tempfile3) && file_exists("/var/tmp/test/" . $tempfile4) && file_exists("/var/tmp/test/" . $tempfile5))
{
    sleep (3);
}

if file 1 exist
{
    if file 2
    {
        if file 3
        {
            if file 4
            {   
                create file 5
            }
            else
            {
                create file 4
            }
        }
        else
        {
            create file 1
        }
    }
    else
    {
        create file 1
    }
}
else
{
    create file 1
}

有更好的写作方法吗?

也许你应该确切地解释一下你想要完成什么。我怀疑任何使用
sleep()
的解决方案。@Jonathon Reinhart:否则您将如何等待来自第三方资源的一些数据?@zerkms-Well目录通知、Windows或Linux上的la可能是理想的解决方案,但对于这个脚本来说可能有些过分。我并不是说睡眠总是错误的,但至少它总是值得再看一眼。我正试图将文件传递到我的服务器进行处理,但我不希望它在任何给定时间处理超过5个文件。这不是中断3以中断if,foreach和while语句?@user2280769:
break
continue
专门处理循环结构
$files = array('f1', 'f2', ...);
while (true) {
    foreach ($files as $file) {
        if (!file_exists($file)) {
            break 2;
        }
    }

    sleep(3);
}

touch($file);