2017-02-07 11 views
0

reflectionMethodsからクラスを作成しようとしていますが、getDocComments()メソッドが失敗する問題があります。ステージング環境。ここでReflectionMethod-> getDocComment()がPHP 5.5で動作しないようです

は、私が使用するテストコードです:私のステージング環境で

<?php 

class foo 
{ 
    /** 
    * Method bar description 
    * 
    * @param string $param1 
    * @param int $param2 
    * @return array 
    */ 
    public static function bar($param1, $param2 = 0) 
    { 
     return array(); 
    } 
} 

$r  = new ReflectionMethod('foo', 'bar'); 
$docBlock = $r->getDocComment(); 

echo $docBlock; 

、$のDocblockは(私は()それをのvar_dump場合はfalseに設定されている)は空です。 ステージング環境で使用しているPHPのバージョンはPHP Version 5.5.30-1~dotdeb+7.1です。 私のローカル環境では、PHP Version 5.6.27-0+deb8u1で動作するようです。

私の発見したオンラインのPHPテスターで問題を再現することはできません(私はPHPTesterOnline PHP Functionsでテストしましたが、いくつかのバージョンのPHPをテストすることができますが、私の環境で私が持っている正確なバージョン

答えて

1

[OK]を、それはZendのOPcacheは、これらのパラメータで、この環境で活性化したようだ:。(にdocblockを含む)

; If disabled, all PHPDoc comments are dropped from the code to reduce the 
; size of the optimized code. 
opcache.save_comments=0 

; 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. 
;opcache.load_comments=1 

セットopcache.save_commentsとを0に、すべてのコメントです削除されたため、読み込めません。

関連する問題