如何在mysql中存储媒体文件路径


How to store media files path in mysql

我用phpmyadmin在mysql中创建了一个数据库,将音乐专辑存储为本地主机,然后向数据库添加了一些表,但我真的不知道如何将我的mp3文件路径存储在具有URL列的表中?我的硬盘里有很多目录,但我不知道怎么处理。

例如

E:'娱乐库'音乐库'艺人名称'专辑名称'歌曲名称。mp3

这是我的表结构

首先需要遍历要索引的文件夹。类似下面的代码将运行递归检查。

我们将为歌曲创建一个类,以便稍后在需要时扩展它。

class Track {
    public $location;
}

然后我们将选择要递归扫描的文件夹并继续执行。

我们将使用可爱的递归迭代器。

$result = array();
$musicFolder = "c:''music''Folder''";
foreach (new RecursiveIteratorIterator(new RecursiveDirectoryIterator($musicFolder)) as $filename)
{
    //This can be extended to check for other files also.
    //But for your purposes we can stick to mp3!
    if(getExtention($filename) == "mp3" )
    {
        $arrayItem = new Track();
        $arrayItem->location = $filename;
        array_push($result, $arrayItem);
    }
}

现在你所有的文件位置都在数组对象$result中。然后你可以插入任何你喜欢的MySQL数据库。

我想这就是你要找的?

最好的方法是定义一个存放所有目录的位置。

例如/var/www/site/upload

将该值作为配置值,以便在以后需要时使用。现在要在数据库中存储值,您应该存储从基本位置开始的路径。

/dir1/file1.mp3
/dir2/file2.mp3
/dir3/file3.mp3

这种方式在将来如果你必须改变你的上传目录的位置,那么只需将你的文件移动到新的位置,并使用新的值编辑你的位置,你就完成了。