我需要列出给定父文件夹中的所有文件/文件夹,并将其转储到mysql中。
目前为止我有:
<?php
ini_set('display_errors', 1);
ini_set('display_startup_errors', 1);
error_reporting(E_ALL);
$dir = '/home/kevinpirnie/www';
function dirToArray( $dir ) {
$result = array();
$cdir = scandir($dir);
foreach ($cdir as $key => $value) {
if (!in_array($value, array(".", ".."))) {
if (is_dir($dir . DIRECTORY_SEPARATOR . $value)){
$result[$value] = dirToArray($dir . DIRECTORY_SEPARATOR . $value);
} else {
$result[] = $value;
}
}
}
return $result;
}
$res = dirToArray($dir);
echo '<hr />';
echo '<pre>';
print_r($res);
echo '</pre>';
我卡住的问题是如何给目录分配ID,然后将它们与其父ID关联起来。目前,这段代码基本上可以满足我的需求,我只需要能够将其转换为mysql插入语句,同时保持关联结构,但由于工作时间过长,我的大脑已经死掉了。最终,我希望拥有类似以下表结构:FileID、FolderID、ParentFolderID和FileName。我该怎么做?