基于url PHP创建文件夹树结构

时间:2014-05-26 20:35:47

标签: php github mkdir

我从git中提取一些原始文件内容并在我的网站上显示这些内容。 因此,我不会在每次加载时ping github,而是将这些文件内容缓存到一个简单的txt文件中。

一切都很好,花花公子。但是我将它们全部缓存到同一个文件夹中。

我想要做的是从此网址

创建实际的文件夹树
https://raw.githubusercontent.com/octocat/Spoon-Knife/master/index.html

以便我的缓存文件保存为

octocat
--Spoon-Knife
---master
----test.txt

根据网址创建此类文件夹结构的任何快速方法? 谢谢!

1 个答案:

答案 0 :(得分:5)

我认为这应该有效,它使用parse_url()函数提取目录结构,并创建嵌套目录(如果它们不存在)。

$url = 'https://raw.githubusercontent.com/octocat/Spoon-Knife/master/index.html';

$path = parse_url( $url, PHP_URL_PATH );
$dir = __DIR__ . dirname($path) . '/';

if ( !file_exists( $dir ) ) {
    mkdir( $dir, 0777, true );
}