gpt4 book ai didi

PHP:将完整数组与空数组合并还是先检查 isset()?

转载 作者:可可西里 更新时间:2023-10-31 22:49:48 25 4
gpt4 key购买 nike

我有一些函数应该返回一个数组,以便与另一个数组合并。

然而,有时没有任何东西可以返回。这里最好的场景是什么?

  1. 返回一个空数组并将其与完整的数组合并或
  2. 返回 null,将返回值存储在一个变量中,检查该变量,然后在需要时合并它。

我问这个是因为有时最短路线并不是最快的,而且我真的不知道 array_merge() 在幕后做了什么。

最佳答案

返回空数组。比较两个选项的复杂性

  1. 返回一个空数组并将其与完整的数组合并或
  2. 返回 null,将返回值存储在一个变量中,检查该变量,然后在需要时合并它。

当您编写一个函数时,除您之外的其他人都会使用它(这包括 6 个月后的您,他们不知道您当前在做什么)。如果您返回 null,使用您的函数的人需要知道它可能不会返回数组,因此无论何时他们使用您的函数都需要将他们的变量包装在很多 is_arrayis_set 检查。这会导致以后更难维护代码,或者当您的应用程序/系统在返回数组时工作但在返回 null 时不工作时出现错误。如果你的函数总是返回一个数组,人们可以安全地将它传递给需要数组的函数。 (这就是为什么一些强类型执行的拥护者讨厌 PHP。在像 Java 这样的语言中,这并不令人高兴,因为函数返回特定类型的东西)

您对性能的关注值得称赞,但一般来说,内置的数组操作函数都经过了很好的调整,并且只会在一小部分时间成为瓶颈。在日常代码运行中,检查变量值和在零元素数组中合并的性能优势将可以忽略不计。

使用更简洁的 API、基准测试,然后优化您开始发现性能问题的特定情况。

关于PHP:将完整数组与空数组合并还是先检查 isset()?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2113158/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com