ReflectionClass getDocComment returning false

2019-07-07 01:58发布

I am trying to get the doc comment from a class and for the life of me, I have no idea why getDocComment() is returning false. I am expecting getDocComment to return @Whatever.

<?php
/** @Whatever */
class Test {
}

$rc = new ReflectionClass("Test");
var_dump($rc->getDocComment());

Output: bool(false)

$ php --version
PHP 5.5.1 (cli) (built: Aug 31 2013 01:32:53) 
Copyright (c) 1997-2013 The PHP Group
Zend Engine v2.5.0, Copyright (c) 1998-2013 Zend Technologies
with Zend OPcache v7.0.2-dev, Copyright (c) 1999-2013, by Zend Technologies

1条回答
祖国的老花朵
2楼-- · 2019-07-07 02:22

If you're using Zend Opcache, then look at the following ini settings:

opcache.save_comments (default "1")
    If disabled, all PHPDoc comments are dropped from the code to reduce the
       size of the optimized code. Disabling "Doc Comments" may break some
       existing applications and frameworks (e.g. Doctrine, ZF2, PHPUnit)

opcache.load_comments (default "1")
    If disabled, PHPDoc comments are not loaded from SHM, so "Doc Comments"
       may be always stored (save_comments=1), but not loaded by applications
       that don't need them anyway.
查看更多
登录 后发表回答