php - 从数组中提取变量对性能有影响吗?

标签 php performance variables arrays extract

我发现了 PHP 中很棒的 extract 函数,我认为它非常方便。但是,我了解到 PHP 中的大多数优点也会影响性能,所以我的问题是,从性能角度来看,哪些因素会影响使用 extract

对于大型应用程序来说,从数组中提取变量是一种禁忌吗?

最佳答案

更新:

正如下面的评论者所指出的,多年后我现在敏锐地意识到 - php 变量写时复制。然而,在全局范围内提取防止变量被垃圾收集。所以正如我之前所说,“考虑你的范围”


取决于数组的大小和提取它的范围,假设您将一个巨大的数组提取到全局命名空间,我可以看到它会产生影响,因为您会将所有数据存储在内存中两次 - 我相信虽然它可能会做一些有趣的内部事情,而 PHP 是众所周知的限制 -

但说你做到了

function bob(){
    extract( array( 'a' => 'woo', 'b' =>'fun', 'c' => 'array' ) );
}

它不会有真正持久的效果。

长话短说,只需考虑您在做什么、为什么这样做以及范围。

关于php - 从数组中提取变量对性能有影响吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2868325/

相关文章:

php - 用 PHP 替换多个占位符?

html - 为笔画 dashoffset 设置动画时使用过多 CPU 资源使用 SVG 路径创建的边框

python - 尝试解决项目 Euler 时 python 运行时间非常慢。不确定是python还是慢速算法

variables - 如何在 Haskell 中分割线?

variables - sshd在每个ssh session 开始时打印环境变量

php - 搜索查询中的匹配问题

php - SphinxQL 按多个字段排序

php - 我如何将此 MySQL 数据转换为此 XML 字符串 (PHP)?

c# - 计算整数十进制长度的最快方法? (。网)

variables - 使用变量来引用哈希表的内容