PHP适合上传大文件如视频吗

1 投票
2 回答
1065 浏览
提问于 2025-04-17 14:29

你好,我想知道从PHP上传大文件,比如视频(超过200MB到1GB),在设置好服务器配置,比如最大上传大小和执行时间等之后,是否是个好主意。我之所以问这个问题,是因为我看到过说上传大文件时,最佳做法是把文件分成小块来上传(我觉得YouTube就是这么做的)。我需要使用其他语言,比如Python或C++来上传大文件吗,还是说PHP就足够了?如果需要使用其他语言,能不能给我推荐一些学习资料呢?

谢谢!

2 个回答

0

上传大文件的时候,不仅仅要考虑PHP,你的网络服务器也得支持这个功能,特别是nginx。我不太清楚httpd是怎么处理这个问题的,不过正如你所说,把文件分成小块上传是一个可行的解决办法。还有FTP也是一个选择。

2

在上传文件的时候,PHP会把整个文件都放在内存里。这意味着如果你同时上传5个文件,最多可能需要超过5GB的内存。

其实在PHP中是可以做到的,我用过一种叫做“分块”的方法来实现这个功能。关于这个话题,StackOverflow上有很多相关的问题:

不过我个人更喜欢使用plupload。这是一个非常完整的跨平台上传脚本(支持JS、Flash、Silverlight),里面还有很好的PHP代码示例来处理分块上传。

撰写回答