1--TEST-- 2ReflectionClass::getDocComment() 3--CREDITS-- 4Robin Fernandes <robinf@php.net> 5Steve Seear <stevseea@php.net> 6--INI-- 7opcache.save_comments=1 8opcache.load_comments=1 9--FILE-- 10<?php 11/** 12 13 14 My 15Doc 16 * Comment 17for A 18 19* */ 20class A {} 21 22/** My DocComment for B */ 23class B extends A { } 24 25class C extends B {} 26 27/** 28 * Interface doc comment 29 */ 30 31 32 33 34interface I {} 35 36/*.* 37 * Not a doc comment 38 */ 39class D implements I {} 40 41/**** Not a doc comment */ 42class E extends C implements I {} {} 43 44/**?** Not a doc comment */ 45class F extends C implements I {} {} 46 47/** ** Doc comment for G */ 48final class G extends C implements I {} {} 49 50$classes = array('A', 'B', 'C', 'D', 'E', 'F', 'G', 'I'); 51foreach ($classes as $class) { 52 echo "\n\n---> Doc comment for class $class:\n"; 53 $rc = new ReflectionClass($class); 54 var_dump($rc->getDocComment()); 55} 56 57 58?> 59--EXPECTF-- 60 61 62---> Doc comment for class A: 63string(%d) "/** 64 65 66 My 67Doc 68 * Comment 69for A 70 71* */" 72 73 74---> Doc comment for class B: 75string(26) "/** My DocComment for B */" 76 77 78---> Doc comment for class C: 79bool(false) 80 81 82---> Doc comment for class D: 83bool(false) 84 85 86---> Doc comment for class E: 87bool(false) 88 89 90---> Doc comment for class F: 91bool(false) 92 93 94---> Doc comment for class G: 95string(27) "/** ** Doc comment for G */" 96 97 98---> Doc comment for class I: 99string(%d) "/** 100 * Interface doc comment 101 */"