【发布时间】:2010-02-22 17:13:31
【问题描述】:
我刚刚做了一个文件上传表单,目前我已经有了,用户只能上传自己的.mp3;
目前,我的表单所做的只是将文件名更改为 $username 。 “——”。 $标题;他们输入的变量;
然而,该表单仍处于测试阶段,我想问是否有一种方法可以使用 PHP 查看文件信息(如果不是所有文件,则为 .mp3),然后使用 $username 重写文件信息和$title,以及来自用户的其他输入 - 即在上传文件之前。
我该怎么做?
【问题讨论】:
我刚刚做了一个文件上传表单,目前我已经有了,用户只能上传自己的.mp3;
目前,我的表单所做的只是将文件名更改为 $username 。 “——”。 $标题;他们输入的变量;
然而,该表单仍处于测试阶段,我想问是否有一种方法可以使用 PHP 查看文件信息(如果不是所有文件,则为 .mp3),然后使用 $username 重写文件信息和$title,以及来自用户的其他输入 - 即在上传文件之前。
我该怎么做?
【问题讨论】:
您可以使用getID3()解析器获取MP3文件信息。
【讨论】:
这就是你所追求的吗? http://getid3.sourceforge.net/
【讨论】:
有多种方法可以做到这一点......有一个名为 id3 的 pecl ext 允许您读取和设置 mp3 文件的标签。
链接到 pecl:http://pecl.php.net/package/id3 ,这里还有一个关于如何使用分机的不错教程的链接......http://devzone.zend.com/article/4025-Reading-and-Writing-MP3-and-Photo-Metadata-with-PECL-
如果文件上没有设置 mp3 标签,您可以随时尝试ffmpeg,它会提供有关文件编码的所有信息...还有一个 php lib 包含 ffmpeg,这可能很有用@987654324 @
【讨论】:
如果无法安装php id3模块可以使用this function。
【讨论】:
听起来您只是想重命名文件。如果是这种情况,你会做这样的事情:
copy($OrigPath . $OrigFilename, $OrigPath . $Username . " - " . $Title . $OrigFilename);
参考:http://us2.php.net/manual/en/function.rename.php
G-Man
【讨论】:
如果您真的要问是否可以“在上传文件之前”获取文件信息,那么不,您不能。您无法从 Web 服务器读取客户端硬盘上的文件。其他答案包括文件上传后您可以做什么。
【讨论】: