当我对一个大文件 (5GB) 调用 hash_file
时,我注意到我机器的内存使用量上升了。操作成功完成,但我想知道 hash_file
的内部实现是将文件内容流式传输到哈希算法中,还是尝试先将整个文件内容加载到内存中。有人知道吗?
最佳答案
还没有人正确回答这个问题,所以我正在回答我自己的问题。经过一些测试后发现 hash_file
确实将文件作为流操作,而不是在内部使用一些愚蠢的东西,比如 file_get_contents
。通过使用 php_memory_limit
值低于被散列文件大小的环境进行测试。 (一开始就应该这样做,对噪音感到抱歉。)
关于php - PHP 的 hash_file 是在内部流式传输吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20845182/