繁体   English   中英

PHP-如何将大量文件路径存储到MySQL数据库?

[英]PHP - How to store a large number of filepaths to MySQL database?

我需要将大量文件存储到MySQL数据库。 这些文件存储在服务器上,我需要做的是这样的:

ID     artist         album         path
123    Artist Name    Album Name    /music/Artist Name/Album Name/Music Name.mp3

但是正如我所说,这是一个非常大量的文件,并且手动添加它们不是一种选择。 我想知道是否有人知道一种简单的方法,至少可以将路径导入数据库。 之后可以执行的艺术家和专辑,并且可以手动执行。

有任何想法吗?

  1. 编写php脚本,它将从特定位置读取文件。 您可以使用目录迭代器http://www.php.net/manual/zh/class.recursivedirectoryiterator.php
  2. 表单文本文件,结构为“ artist_name”,“ album”,“ path”。
  3. 使用LOAD DATA INFILE'file'INTO TABLE your_table; http://dev.mysql.com/doc/refman/5.1/en/load-data.html

线索:使用PHP递归地查找* .mp3文件或您要查找的扩展名的文件结构。 对于返回的每个结果,将整个路径,文件大小等存储在数据库表中。 您可能要考虑使用Python语言。

  1. 使用这些字段创建数据库表。
  2. Google提供了一个php脚本,用于获取目录/子目录/文件名的列表。
  3. 将该信息存储在数据库中。

您可能需要这样的东西:

$files = scandir(...); // you need scandir recursively the path /music

foreach($files as $file) {
    $paths  = explode("/", $file);

    $artist = $paths[1];
    $album  = $paths[2];

    $sql    = "INSERT INTO table (artist, album, path) VALUES ('$artist', '$album', '$file');";
    // execute sql or save it into file...
}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM