如果函数没有在PHP中调用,代码是否仍然在函数中运行?

问题描述:

我想知道,我在PHP中有几个函数,每次都没有调用,但仍然包含在每个负载的文件中。即使你当时没有调用函数,它是否仍然运行代码?我问的原因是,我的函数中的代码对于运行CPU而言是昂贵的,我不会每次都调用它们,并且要确定是否没有调用它们不在函数内运行代码。如果函数没有在PHP中调用,代码是否仍然在函数中运行?

谢谢

+3

无这是函数和函数调用的目的。 – defaultNINJA 2013-02-28 13:46:48

+1

函数只有在调用时才会运行,所以不用担心:-) – chriz 2013-02-28 13:47:14

+1

代码如何运行?函数有争论;他们的价值是什么?这些功能何时运行?按什么顺序?有这么多的问题与困难的答案,它应该是明显的。 – Jon 2013-02-28 13:47:23

简言之,未明确叫不运行的功能。然而,这里有一个简短的内容和为什么我们使用我发现的函数。

函数是一个“黑盒子”,我们已经锁定我们的节目 的一部分转变。函数背后的想法是,它间隔化的 部分的程序,并且特别地,该函数内的代码具有 一些有用的性能:

  1. 它执行一些明确定义的任务,这将是有用到其他 部分的程序。

  2. 它也可能对其他程序有用;也就是说,我们可能是 能够重用它(而不必重写它)。

  3. 该程序的其余部分不必知道如何实现 函数的细节。这可以使程序 的其余部分更容易思考。

  4. 该功能很好地执行其任务。它可能会被写入做 稍多于第一个调用它的程序所需要的, ,预计调用程序(或其他一些 程序)可能稍后需要额外功能或改进 性能。 (这是一个要完成的功能做它的工作 好,否则可能出现不愿调用它,它 因此可能无法实现可重用的目标是非常重要的。)

  5. 通过将代码来执行有用的任务变成一个函数,而 只是在程序的其他部分调用该函数必须执行的任务,其余的程序变得更清晰: 而不是有一些大的,复杂的,难以理解的 片代码重复在任何地方执行任务,我们有一个简单的函数调用 ,并且函数的名字提醒我们 我们正在执行哪项任务执行。

  6. 由于程序的其他部分并不需要知道的 细节功能是如何实现的,该程序的其余部分不 护理如果函数后重新实现,在一些不同的方式 (只要它继续执行相同的任务,当然!)。这 意味着该程序的一部分可以重写,以提高性能或添加一个新功能(或只是为了修复一个bug),而不必 不得不重写程序的其余部分。

功能可能是我们对抗 软件复杂性的最重要的武器。你会想知道什么时候适合 将函数处理分解为函数(也可以不适用),以及如何设置函数接口以最好地实现上面提到的质量 :可重用性,信息隐藏,清晰度和可维护性。

http://www.eskimo.com/~scs/cclass/notes/sx5.html

+2

TL; DR:否,未调用的函数未运行。 – Andy 2013-02-28 13:57:47

+0

我认为给出了什么是功能目的的证据,它将指出为什么它不能自己运行:) – defaultNINJA 2013-02-28 14:13:11

+0

我的PHP函数中的语句实际上被执行并导致错误,请你帮我一下调试?在Google上搜索时找到答案。 – Oxwivi 2015-04-26 09:59:02