【问题标题】:PHP Memory OptimizationPHP 内存优化
【发布时间】:2010-01-22 02:36:10
【问题描述】:

我正在使用 xdebug 跟踪一些代码以查看它使用了多少内存,但在跟踪开始时,它使用了大约 560224 字节的内存。这是正常的吗?这是在执行任何代码之前。

编辑: 我应该澄清一下;这不是我要优化的。我刚刚注意到它并想要一个解释。

【问题讨论】:

  • 半 MB?为什么需要优化它?来吧....
  • 嘿,是的 - 这是一个非常小的足迹......

标签: php memory memory-optimization


【解决方案1】:
# php -r 'var_dump(memory_get_usage());'
int(75880)
# php -r 'var_dump(memory_get_usage());'
int(75880)
# php -r 'var_dump(memory_get_usage());'
int(75880)

这里有两件有趣的事情:一个简单的“脚本”在命令行上占用了 76k,并且一直如此。

# php -r 'var_dump(memory_get_usage()); echo "";'
int(76016)
# php -r 'var_dump(memory_get_usage()); echo ""; echo "";'
int(76160)

添加代码会增加内存使用。毫不奇怪——解析后的代码必须去某个地方。

所以:您看到的内存使用是您的所有代码,以及在开始时构建的任何其他内容。请记住,当您的第一行代码运行时,PHP 已经解析了很多,如果不是全部代码的话。 (任何动态包含或自动加载都可能导致稍后发生某些解析)

总体而言,尝试减少这种情况可能是徒劳的,尽管您可能希望避免任何不必要的包含。无论如何,这只是一个好主意。

【讨论】: