编程语言
首页 > 编程语言> > php – 我在哪里可以获得反射修饰符值列表?

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

作者:互联网

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,reflection,introspection
来源: https://codeday.me/bug/20190826/1732849.html