PHP 101:变量与函数

Ada*_*dam 5 php performance

我正在创建一个全局文件来保存将在我的网站中重复使用的项目。这两行代码有什么区别?这个比那个好吗?

这:

$logo = "img/mainlogo.jpg";
Run Code Online (Sandbox Code Playgroud)

与此相比:

function logo() {
   echo "img/mainlogo.jpg";
}
Run Code Online (Sandbox Code Playgroud)

Pra*_*man 1

功能都不错。

我看这function logo()$logo. echo不占用太多内存,但$logo确实如此。即使function logo()需要一些东西,它也会由 PHP 自己的垃圾收集器处理。您还可以使用这些函数来确保您没有滥用分配的内存。

  1. memory_get_peak_usage();
  2. memory_get_usage();

解释:

在使用函数结束时,PHP 会清除它正在使用的内存,至少比不使用函数时更有效。如果您使用递归代码或类似的内存密集型代码,请尝试将代码放入函数或方法中,在关闭函数/方法时,用于该函数的内存将比在循环中取消设置变量更有效地被垃圾化本身。

来源: 防止 PHP 内存不足的 7 个技巧

  • http://ideone.com/YVmnrj 和 http://ideone.com/kxjpQ1。结果和你的说法不一样。 (3认同)
  • -1,那篇文章充满了边缘案例、明显愚蠢的做法和微观管理。它“不是”一个好的资源,不应该被用作权威来源。 (2认同)