Annotation of embedaddon/php/ext/standard/tests/strings/strrchr_variation1.phpt, revision 1.1
1.1 ! misho 1: --TEST--
! 2: Test strrchr() function : usage variations - double quoted strings
! 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:
! 10: /* Test strrchr() function by passing various double quoted strings for 'haystack' & 'needle' */
! 11:
! 12: echo "*** Testing strrchr() function: with various double quoted strings ***";
! 13: $haystack = "Hello,\t\n\0\n $&!#%\o,()*+-./:;<=>?@hello123456he \x234 \101 ";
! 14: $needle = array(
! 15: //regular strings
! 16: "l",
! 17: "L",
! 18: "HELLO",
! 19: "hEllo",
! 20:
! 21: //escape characters
! 22: "\t",
! 23: "\T",
! 24: " ",
! 25: "\n",
! 26: "\N",
! 27: "
! 28: ", //new line
! 29:
! 30: //nulls
! 31: "\0",
! 32: NULL,
! 33: null,
! 34:
! 35: //boolean false
! 36: FALSE,
! 37: false,
! 38:
! 39: //empty string
! 40: "",
! 41:
! 42: //special chars
! 43: " ",
! 44: "$",
! 45: " $",
! 46: "&",
! 47: "!#",
! 48: "%\o",
! 49: "\o,",
! 50: "()",
! 51: "*+",
! 52: "+",
! 53: "-",
! 54: ".",
! 55: ".;",
! 56: ":;",
! 57: ";",
! 58: "<=>",
! 59: ">",
! 60: "=>",
! 61: "?",
! 62: "@",
! 63: "@hEllo",
! 64:
! 65: "12345", //decimal numeric string
! 66: "\x23", //hexadecimal numeric string
! 67: "#", //respective ASCII char of \x23
! 68: "\101", //octal numeric string
! 69: "A", //respective ASCII char of \101
! 70: "456HEE", //numerics + chars
! 71: 42, //needle as int(ASCII value of "*")
! 72: $haystack //haystack as needle
! 73: );
! 74:
! 75: /* loop through to get the position of the needle in haystack string */
! 76: $count = 1;
! 77: for($index=0; $index<count($needle); $index++) {
! 78: echo "\n-- Iteration $count --\n";
! 79: var_dump( strrchr($haystack, $needle[$index]) );
! 80: $count++;
! 81: }
! 82: echo "*** Done ***";
! 83: ?>
! 84: --EXPECTF--
! 85: *** Testing strrchr() function: with various double quoted strings ***
! 86: -- Iteration 1 --
! 87: string(16) "lo123456he #4 A "
! 88:
! 89: -- Iteration 2 --
! 90: bool(false)
! 91:
! 92: -- Iteration 3 --
! 93: string(53) "Hello,
! 94: