在给定的路径上自动创建所有缺失的文件夹。

10 浏览
0 Comments

在给定的路径上自动创建所有缺失的文件夹。

我从mysql表中获取了一些行,想要将列story中的数据放入一个新创建的文件系统中的.txt文件中,但是出现了错误-路径中的某些文件夹不存在。有没有办法自动创建所有丢失的文件夹,并最终创建.txt文件?

foreach($rows as $row){
    $path = $row['pt'] . "/" . $row['title'] . ".txt";
    if(!is_file($path)){
        fopen($path, "w");
        file_put_contents($path, $row['story']);
    }
}

0
0 Comments

问题:如何在给定的路径上自动创建所有缺失的文件夹?

原因:在给定的路径上创建文件夹时,可能会遇到一些文件夹不存在的情况。为了解决这个问题,我们需要在创建文件夹之前检查文件夹是否已经存在。如果文件夹不存在,则创建它。

解决方法:使用PHP的mkdir函数来创建文件夹,并使用is_file函数来检查文件是否存在。以下是解决该问题的代码示例:

foreach($rows as $row){
    $path = $row['pt'] . "/" . $row['title'] . ".txt";
    
    // 检查文件夹是否存在,如果不存在则创建
    mkdir($row['pt'], 0777, true);
    
    // 创建文件并写入内容
    if(!is_file($path)){
        fopen($path, "w");
        file_put_contents($path, $row['story']);
    }
}

以上代码会遍历一个数组$rows,并根据每个数组元素中的数据创建文件夹和文件。代码首先构建文件的路径,然后使用mkdir函数创建文件夹。之后,使用is_file函数检查文件是否存在。如果文件不存在,则使用fopen函数创建文件,并使用file_put_contents函数将$row['story']的内容写入文件中。

通过以上的方法,我们可以在给定的路径上自动创建所有缺失的文件夹。这种方法可以确保在创建文件之前,必要的文件夹已经存在,从而避免出现错误。

0