fro*_*oyo 6 php sanitization file-upload
我有一个PHP应用程序.
我允许用户将文件上传到我的Web应用程序.
问题:$_FILES["filename"]["tmp_name"]在PHP中清理上传文档的文件名的最佳方法是什么?
更新:
我可以获取上传文件名的MD5并将其用作新分配的文件名吗?如果是这样,我如何在PHP中执行此操作?
我敢打赌,您还将有关该文件的一些信息存储在数据库中。如果这是正确的,那么您可以使用主键(ID) 作为服务器上的文件名,并在数据库中保留原始文件名。这为您提供了更大的灵活性,因为您可以在不重命名实际文件的情况下操作元数据。
我只需运行一个简单的正则表达式,用下划线替换任何非字母数字字符(或者完全删除这些字符)。当然,请确保保留扩展名。
如果您想更进一步,可以使用 magic mime 扩展名来确保文件的格式与扩展名所示的格式相同。
编辑:为了避免目录中的文件名冲突,您可以将用户 IP + 当前时间的 md5 附加到文件名。
| 归档时间: |
|
| 查看次数: |
10523 次 |
| 最近记录: |