PHP exec()使用内存

时间:2012-07-02 10:11:07

标签: php memory exec

我似乎找不到这个答案的明确答案。

当使用PHP中的exec()调用shell命令时,shell命令使用的内存是否会计入PHP脚本的内存限制?

我意识到如果该命令生成大量输出,并且该输出是在$ouput的{​​{1}}(第二个)参数中捕获的,那么返回的数据可能会破坏PHP内存限制。但是,假设所有输出都发送到文件,如果exec()命令需要运行128M内存,那么具有64M内存限制的PHP脚本是否能够运行它?

exec()

我假设PHP5.3 +

1 个答案:

答案 0 :(得分:7)

exec()命令不会直接计入PHP,因为该过程是单独执行的,而不是从PHP进程中执行的。话虽如此,如果你使用任何输出变量与命令,他们将计入限制。

因此,如果您有一个产生大量详细日志记录的文件,并且您正在捕获该日志记录,那么它将计入内存限制。