【发布时间】:2014-02-17 14:27:12
【问题描述】:
我希望 xdebug 有朝一日能够浏览所有静态变量和属性,但根据作者的说法,无法在引擎中获得这些的列表。这让我感到惊讶,因为静态变量看起来就像具有孤立范围的全局变量。
它们真的没有存储在哈希表中,还是表条目不可枚举的问题?
【问题讨论】:
-
我很确定你最好询问 Derick Rethans(XDebug 的作者和 PHP 语言 / Zend 引擎的活跃开发人员)或在 php 内部列表 (internals@lists. php.net)
-
我认为将它们视为全局变量是一种狭隘的观点。您可以在函数中有一个静态变量,它只会被初始化一次。否则,它就像任何其他变量一样。
-
@BrentBaisley 请注意,除了静态允许使用快捷方式初始化器之外,它们的行为相同:3v4l.org/68uRA
-
这更令人惊讶:3v4l.org/JTc71 "static" 为您提供了一个内部值,但您可以将其从当前范围解除绑定,重用本地变量,然后再次重新绑定。跨度>
标签: php c compiler-construction static