我刚刚做了一个文件上传表格,到目前为止我已经有了它,所以用户只能上传自己的.mp3;
目前,我的表单所做的只是将文件名更改为 $username 。“——”。$标题; 他们输入的变量;
然而,该表单仍处于测试阶段,我想问是否有一种方法可以使用 PHP 查看文件信息(如果不是所有文件,则为 .mp3),然后使用 $username 和 $title 重写文件信息,以及来自用户的其他输入 - 即在上传文件之前。
我该怎么做?
您可以使用getID3()解析器来获取 MP3 文件信息。
还有这些 ID3 PHP 函数可用。
这就是你所追求的吗?http://getid3.sourceforge.net/
有多种方法可以做到这一点......有一个名为 id3 的 pecl ext 允许您读取和设置 mp3 文件的标签。
pecl 的链接:http://pecl.php.net/package/id3 , 这里还有一个关于如何使用 ext 的好教程的链接。http://devzone.zend.com/article/4025 -读和写-MP3-和-照片-元数据-with-PECL-
如果未在文件上设置 mp3 标签,您可以随时尝试ffmpeg,它会提供有关文件编码的所有信息......还有一个 php lib 包装了 ffmpeg,这可能很有用http://sourceforge.net /projects/ffmpeg-phpclass/
如果您无法安装 php id3 模块,您可以使用此功能。
听起来您只是想重命名文件。如果是这种情况,你会做这样的事情:
copy($OrigPath . $OrigFilename, $OrigPath . $Username . " - " . $Title . $OrigFilename);
参考:http ://us2.php.net/manual/en/function.rename.php
G人
如果您真的在询问是否可以“在上传文件之前”获取文件信息,那么不,您不能。您无法从 Web 服务器读取客户端硬盘上的文件。其他答案涵盖了文件上传后您可以执行的操作。