constants_scope_001.phpt 986 B

1234567891011121314151617181920212223242526272829303132333435363738
  1. --TEST--
  2. ZE2 class constants and scope
  3. --SKIPIF--
  4. <?php if (version_compare(zend_version(), '2.0.0-dev', '<')) die('skip ZendEngine 2 needed'); ?>
  5. --FILE--
  6. <?php
  7. class ErrorCodes {
  8. const FATAL = "Fatal error\n";
  9. const WARNING = "Warning\n";
  10. const INFO = "Informational message\n";
  11. static function print_fatal_error_codes() {
  12. echo "FATAL = " . FATAL . "\n";
  13. echo "self::FATAL = " . self::FATAL;
  14. }
  15. }
  16. class ErrorCodesDerived extends ErrorCodes {
  17. const FATAL = "Worst error\n";
  18. static function print_fatal_error_codes() {
  19. echo "self::FATAL = " . self::FATAL;
  20. echo "parent::FATAL = " . parent::FATAL;
  21. }
  22. }
  23. /* Call the static function and move into the ErrorCodes scope */
  24. ErrorCodes::print_fatal_error_codes();
  25. ErrorCodesDerived::print_fatal_error_codes();
  26. ?>
  27. --EXPECTF--
  28. Notice: Use of undefined constant FATAL - assumed 'FATAL' in %sconstants_scope_001.php on line %d
  29. FATAL = FATAL
  30. self::FATAL = Fatal error
  31. self::FATAL = Worst error
  32. parent::FATAL = Fatal error