strrchr_basic.phpt 1.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657
  1. --TEST--
  2. Test strrchr() function : basic functionality
  3. --FILE--
  4. <?php
  5. /* Prototype : string strrchr(string $haystack, string $needle);
  6. * Description: Finds the last occurrence of a character in a string.
  7. * Source code: ext/standard/string.c
  8. */
  9. echo "*** Testing strrchr() function: basic functionality ***\n";
  10. var_dump( strrchr("Hello, World", "H") ); //needle as single char
  11. var_dump( strrchr("Hello, World", "Hello") ); //needle as a first word of haystack
  12. var_dump( strrchr('Hello, World', 'H') );
  13. var_dump( strrchr('Hello, World', 'Hello') );
  14. //considering case
  15. var_dump( strrchr("Hello, World", "h") );
  16. var_dump( strrchr("Hello, World", "hello") );
  17. //needle as second word of haystack
  18. var_dump( strrchr("Hello, World", "World") );
  19. var_dump( strrchr('Hello, World', 'World') );
  20. //needle as special char
  21. var_dump( strrchr("Hello, World", ",") );
  22. var_dump( strrchr('Hello, World', ',') );
  23. var_dump( strrchr("Hello, World", "Hello, World") ); //needle as haystack
  24. //needle string containing one existing and one non-existing char
  25. var_dump( strrchr("Hello, World", "Hi") );
  26. //multiple existence of needle in haystack
  27. var_dump( strrchr("Hello, World", "o") );
  28. var_dump( strrchr("Hello, World", "ooo") );
  29. var_dump( strrchr("Hello, World", "Zzzz") ); //non-existent needle in haystack
  30. echo "*** Done ***";
  31. ?>
  32. --EXPECTF--
  33. *** Testing strrchr() function: basic functionality ***
  34. string(12) "Hello, World"
  35. string(12) "Hello, World"
  36. string(12) "Hello, World"
  37. string(12) "Hello, World"
  38. bool(false)
  39. bool(false)
  40. string(5) "World"
  41. string(5) "World"
  42. string(7) ", World"
  43. string(7) ", World"
  44. string(12) "Hello, World"
  45. string(12) "Hello, World"
  46. string(4) "orld"
  47. string(4) "orld"
  48. bool(false)
  49. *** Done ***