我需要使用 PHP 的copy()
函数将文件从一个位置复制到另一个位置。我故意不使用rename()
.
这些文件是 500MB 到 1GB。在我启动 PHP 脚本后,移动它们似乎需要大约 10-20 秒(每次执行处理一个文件)。
我的服务器拒绝上传这些文件,因为、max_execution_time
和值,所有这些都设置得高得离谱,但是当我尝试上传时服务器会超时。post_max_size
upload_max_filesize
memory_limit
现在我担心如果copy()
在站点处理大量流量时运行此操作,服务器将失败。
所以我的问题是,PHP 的copy()
运行方式是否会超载服务器的内存和/或执行时间限制?
我知道 PHP 脚本需要很长时间才能完成,但我希望时间本质上只是一段低内存“等待时间”,因为 PHP 坐下来让服务器操作系统移动文件......我不会认为 PHP 需要将文件加载到缓冲区或类似的东西才能复制它,但是这个级别的内存讨论是一个有点超出我理解的话题。
谁能解释 PHP 如何copy()
使用内存,以及是否存在与内存过载相关的风险?