php - 我在哪里可以获得反射修饰符值的列表?

标签 php reflection introspection

This function我的一门课返回了 524320。如果我通过 getModifierNames 运行它,它告诉我:

>> Reflection::getModifierNames(524320)
array (
  0 => 'abstract',
)

哪个是正确的,但是 524320 不是 2 的幂,所以它必须有一些其他标志?实际上,如果我们看一下它的二进制表示,10100111 看起来它设置了 5 个标志。那么其他 4 个是什么?我在哪里可以找到所有这些的列表?

编辑:现在我很困惑......根据this,表示实际上是10000000000000100000 .这是有道理的,因为它对应于“显式抽象类”。哦...我打赌这是一个溢出问题,现在我正在考虑...必须进行更多调查。

最佳答案

参见 http://lxr.php.net/xref/PHP_TRUNK/Zend/zend_compile.h#144 中的 ZEND_ACC_* 常量

请注意,其中一些是内部的,无论如何都不会导出到用户空间。导出到用户空间的可以在http://php.net/manual/en/class.reflectionmethod.php中找到。和其他类。

关于php - 我在哪里可以获得反射修饰符值的列表?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7907771/

相关文章:

java - 类路径和反射

raku - 如何在 Raku 中列出动态和编译时变量

Php将文件保存到特定位置?

php - PDO 错误 : SQLSTATE[HY000]: General error: 2031

PHP - 变量中的变量?

reflection - 如何在 Java 内部使用 Java 9 的反射?

Php如何发送带有粗体文本的邮件

Java 如何将泛型参数声明为任意接口(interface)

python - 在 Python 中更改对运行时函数的引用

python - 查看 Python 函数的代码