PHP - 函数内部的函数。好还是坏?

2022-08-30 20:42:42

我想知道在PHP中定义一个函数是否是一件好事。在性能方面,在函数之前(而不是在功能内部)定义它不是更好吗?


答案 1

我认为你应该更关心可维护性,而不是性能,特别是在那种情况下,两种解决方案之间的性能差异可能不是那么大,而可维护性的差异似乎很重要。

正如唐纳德·高德纳所说:

我们应该忘记小效率,比如说大约97%的时间:过早的优化是万恶之源。

在这种情况下,这是千真万确的;-)


答案 2

反对它的原因有很多:

  • 不会解析内部函数的文档。
  • 内部函数仅在调用外部函数后存在(但即使在外部函数之后的范围之外)
  • 它很难阅读(因为它不常见)
  • 我能想到的唯一优点是定义回调,但这最好使用create_function()()或闭包来完成<PHP 5.3 (>=PHP5.3)
  • 如果你担心这个水平的性能,你真的应该使用另一种语言。

推荐