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/