002.phpt 756 B

123456789101112131415161718192021222324252627282930313233343536373839404142
  1. --TEST--
  2. Test nullsafe strict type check
  3. --FILE--
  4. <?php
  5. try {
  6. false?->bar();
  7. } catch (Throwable $e) {
  8. var_dump($e->getMessage());
  9. }
  10. try {
  11. []?->bar();
  12. } catch (Throwable $e) {
  13. var_dump($e->getMessage());
  14. }
  15. try {
  16. (0)?->bar();
  17. } catch (Throwable $e) {
  18. var_dump($e->getMessage());
  19. }
  20. try {
  21. (0.0)?->bar();
  22. } catch (Throwable $e) {
  23. var_dump($e->getMessage());
  24. }
  25. try {
  26. ''?->bar();
  27. } catch (Throwable $e) {
  28. var_dump($e->getMessage());
  29. }
  30. ?>
  31. --EXPECT--
  32. string(39) "Call to a member function bar() on bool"
  33. string(40) "Call to a member function bar() on array"
  34. string(38) "Call to a member function bar() on int"
  35. string(40) "Call to a member function bar() on float"
  36. string(41) "Call to a member function bar() on string"