semi_reserved_003.phpt 5.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249
  1. --TEST--
  2. Test semi-reserved words as class properties
  3. --FILE--
  4. <?php
  5. class Obj
  6. {
  7. var $empty = 'empty';
  8. var $callable = 'callable';
  9. var $class = 'class';
  10. var $trait = 'trait';
  11. var $extends = 'extends';
  12. var $implements = 'implements';
  13. var $static = 'static';
  14. var $abstract = 'abstract';
  15. var $final = 'final';
  16. var $public = 'public';
  17. var $protected = 'protected';
  18. var $private = 'private';
  19. var $const = 'const';
  20. var $enddeclare = 'enddeclare';
  21. var $endfor = 'endfor';
  22. var $endforeach = 'endforeach';
  23. var $endif = 'endif';
  24. var $endwhile = 'endwhile';
  25. var $and = 'and';
  26. var $global = 'global';
  27. var $goto = 'goto';
  28. var $instanceof = 'instanceof';
  29. var $insteadof = 'insteadof';
  30. var $interface = 'interface';
  31. var $namespace = 'namespace';
  32. var $new = 'new';
  33. var $or = 'or';
  34. var $xor = 'xor';
  35. var $try = 'try';
  36. var $use = 'use';
  37. var $var = 'var';
  38. var $exit = 'exit';
  39. var $list = 'list';
  40. var $clone = 'clone';
  41. var $include = 'include';
  42. var $include_once = 'include_once';
  43. var $throw = 'throw';
  44. var $array = 'array';
  45. var $print = 'print';
  46. var $echo = 'echo';
  47. var $require = 'require';
  48. var $require_once = 'require_once';
  49. var $return = 'return';
  50. var $else = 'else';
  51. var $elseif = 'elseif';
  52. var $default = 'default';
  53. var $break = 'break';
  54. var $continue = 'continue';
  55. var $switch = 'switch';
  56. var $yield = 'yield';
  57. var $function = 'function';
  58. var $fn = 'fn';
  59. var $if = 'if';
  60. var $endswitch = 'endswitch';
  61. var $finally = 'finally';
  62. var $for = 'for';
  63. var $foreach = 'foreach';
  64. var $declare = 'declare';
  65. var $case = 'case';
  66. var $do = 'do';
  67. var $while = 'while';
  68. var $as = 'as';
  69. var $catch = 'catch';
  70. var $die = 'die';
  71. var $self = 'self';
  72. var $parent = 'parent';
  73. var $isset = 'isset';
  74. var $unset = 'unset';
  75. var $__CLASS__ = '__CLASS__';
  76. var $__TRAIT__ = '__TRAIT__';
  77. var $__FUNCTION__ = '__FUNCTION__';
  78. var $__METHOD__ = '__METHOD__';
  79. var $__LINE__ = '__LINE__';
  80. var $__FILE__ = '__FILE__';
  81. var $__DIR__ = '__DIR__';
  82. var $__NAMESPACE__ = '__NAMESPACE__';
  83. var $__halt_compiler = '__halt_compiler';
  84. }
  85. $obj = new Obj;
  86. echo $obj->empty, PHP_EOL;
  87. echo $obj->callable, PHP_EOL;
  88. echo $obj->class, PHP_EOL;
  89. echo $obj->trait, PHP_EOL;
  90. echo $obj->extends, PHP_EOL;
  91. echo $obj->implements, PHP_EOL;
  92. echo $obj->static, PHP_EOL;
  93. echo $obj->abstract, PHP_EOL;
  94. echo $obj->final, PHP_EOL;
  95. echo $obj->public, PHP_EOL;
  96. echo $obj->protected, PHP_EOL;
  97. echo $obj->private, PHP_EOL;
  98. echo $obj->const, PHP_EOL;
  99. echo $obj->enddeclare, PHP_EOL;
  100. echo $obj->endfor, PHP_EOL;
  101. echo $obj->endforeach, PHP_EOL;
  102. echo $obj->endif, PHP_EOL;
  103. echo $obj->endwhile, PHP_EOL;
  104. echo $obj->and, PHP_EOL;
  105. echo $obj->global, PHP_EOL;
  106. echo $obj->goto, PHP_EOL;
  107. echo $obj->instanceof, PHP_EOL;
  108. echo $obj->insteadof, PHP_EOL;
  109. echo $obj->interface, PHP_EOL;
  110. echo $obj->namespace, PHP_EOL;
  111. echo $obj->new, PHP_EOL;
  112. echo $obj->or, PHP_EOL;
  113. echo $obj->xor, PHP_EOL;
  114. echo $obj->try, PHP_EOL;
  115. echo $obj->use, PHP_EOL;
  116. echo $obj->var, PHP_EOL;
  117. echo $obj->exit, PHP_EOL;
  118. echo $obj->list, PHP_EOL;
  119. echo $obj->clone, PHP_EOL;
  120. echo $obj->include, PHP_EOL;
  121. echo $obj->include_once, PHP_EOL;
  122. echo $obj->throw, PHP_EOL;
  123. echo $obj->array, PHP_EOL;
  124. echo $obj->print, PHP_EOL;
  125. echo $obj->echo, PHP_EOL;
  126. echo $obj->require, PHP_EOL;
  127. echo $obj->require_once, PHP_EOL;
  128. echo $obj->return, PHP_EOL;
  129. echo $obj->else, PHP_EOL;
  130. echo $obj->elseif, PHP_EOL;
  131. echo $obj->default, PHP_EOL;
  132. echo $obj->break, PHP_EOL;
  133. echo $obj->continue, PHP_EOL;
  134. echo $obj->switch, PHP_EOL;
  135. echo $obj->yield, PHP_EOL;
  136. echo $obj->function, PHP_EOL;
  137. echo $obj->fn, PHP_EOL;
  138. echo $obj->if, PHP_EOL;
  139. echo $obj->endswitch, PHP_EOL;
  140. echo $obj->finally, PHP_EOL;
  141. echo $obj->for, PHP_EOL;
  142. echo $obj->foreach, PHP_EOL;
  143. echo $obj->declare, PHP_EOL;
  144. echo $obj->case, PHP_EOL;
  145. echo $obj->do, PHP_EOL;
  146. echo $obj->while, PHP_EOL;
  147. echo $obj->as, PHP_EOL;
  148. echo $obj->catch, PHP_EOL;
  149. echo $obj->die, PHP_EOL;
  150. echo $obj->self, PHP_EOL;
  151. echo $obj->parent, PHP_EOL;
  152. echo $obj->isset, PHP_EOL;
  153. echo $obj->unset, PHP_EOL;
  154. echo $obj->__CLASS__, PHP_EOL;
  155. echo $obj->__TRAIT__, PHP_EOL;
  156. echo $obj->__FUNCTION__, PHP_EOL;
  157. echo $obj->__METHOD__, PHP_EOL;
  158. echo $obj->__LINE__, PHP_EOL;
  159. echo $obj->__FILE__, PHP_EOL;
  160. echo $obj->__DIR__, PHP_EOL;
  161. echo $obj->__NAMESPACE__, PHP_EOL;
  162. echo $obj->__halt_compiler, PHP_EOL;
  163. echo "\nDone\n";
  164. ?>
  165. --EXPECT--
  166. empty
  167. callable
  168. class
  169. trait
  170. extends
  171. implements
  172. static
  173. abstract
  174. final
  175. public
  176. protected
  177. private
  178. const
  179. enddeclare
  180. endfor
  181. endforeach
  182. endif
  183. endwhile
  184. and
  185. global
  186. goto
  187. instanceof
  188. insteadof
  189. interface
  190. namespace
  191. new
  192. or
  193. xor
  194. try
  195. use
  196. var
  197. exit
  198. list
  199. clone
  200. include
  201. include_once
  202. throw
  203. array
  204. print
  205. echo
  206. require
  207. require_once
  208. return
  209. else
  210. elseif
  211. default
  212. break
  213. continue
  214. switch
  215. yield
  216. function
  217. fn
  218. if
  219. endswitch
  220. finally
  221. for
  222. foreach
  223. declare
  224. case
  225. do
  226. while
  227. as
  228. catch
  229. die
  230. self
  231. parent
  232. isset
  233. unset
  234. __CLASS__
  235. __TRAIT__
  236. __FUNCTION__
  237. __METHOD__
  238. __LINE__
  239. __FILE__
  240. __DIR__
  241. __NAMESPACE__
  242. __halt_compiler
  243. Done