Annotation of embedaddon/php/ext/standard/tests/strings/strrchr_variation2.phpt, revision 1.1.1.1

1.1       misho       1: --TEST--
                      2: Test strrchr() function : usage variations - single 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 single quoted strings to 'haystack' & 'needle' */
                     11: 
                     12: echo "*** Testing strrchr() function: with various single 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:   '#',  //hexadecimal numeric string
                     68:   '\101',  //octal numeric string
                     69:   'A',
                     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 single quoted strings ***
                     86: -- Iteration 1 --
                     87: string(22) "lo123456he \x234 \101 "
                     88: 
                     89: -- Iteration 2 --
                     90: bool(false)
                     91: 
                     92: -- Iteration 3 --
                     93: string(63) "Hello,\t\n\0\n  $&!#%\o,()*+-./:;<=>?@hello123456he \x234 \101 "
                     94: 
                     95: -- Iteration 4 --
                     96: string(14) "he \x234 \101 "
                     97: 
                     98: -- Iteration 5 --
                     99: string(5) "\101 "
                    100: 
                    101: -- Iteration 6 --
                    102: string(5) "\101 "
                    103: 
                    104: -- Iteration 7 --
                    105: string(1) " "
                    106: 
                    107: -- Iteration 8 --
                    108: string(5) "\101 "
                    109: 
                    110: -- Iteration 9 --
                    111: string(5) "\101 "
                    112: 
                    113: -- Iteration 10 --
                    114: bool(false)
                    115: 
                    116: -- Iteration 11 --
                    117: string(5) "\101 "
                    118: 
                    119: -- Iteration 12 --
                    120: bool(false)
                    121: 
                    122: -- Iteration 13 --
                    123: bool(false)
                    124: 
                    125: -- Iteration 14 --
                    126: bool(false)
                    127: 
                    128: -- Iteration 15 --
                    129: bool(false)
                    130: 
                    131: -- Iteration 16 --
                    132: bool(false)
                    133: 
                    134: -- Iteration 17 --
                    135: string(1) " "
                    136: 
                    137: -- Iteration 18 --
                    138: string(47) "$&!#%\o,()*+-./:;<=>?@hello123456he \x234 \101 "
                    139: 
                    140: -- Iteration 19 --
                    141: string(1) " "
                    142: 
                    143: -- Iteration 20 --
                    144: string(46) "&!#%\o,()*+-./:;<=>?@hello123456he \x234 \101 "
                    145: 
                    146: -- Iteration 21 --
                    147: string(45) "!#%\o,()*+-./:;<=>?@hello123456he \x234 \101 "
                    148: 
                    149: -- Iteration 22 --
                    150: string(43) "%\o,()*+-./:;<=>?@hello123456he \x234 \101 "
                    151: 
                    152: -- Iteration 23 --
                    153: string(5) "\101 "
                    154: 
                    155: -- Iteration 24 --
                    156: string(39) "()*+-./:;<=>?@hello123456he \x234 \101 "
                    157: 
                    158: -- Iteration 25 --
                    159: string(37) "*+-./:;<=>?@hello123456he \x234 \101 "
                    160: 
                    161: -- Iteration 26 --
                    162: string(36) "+-./:;<=>?@hello123456he \x234 \101 "
                    163: 
                    164: -- Iteration 27 --
                    165: string(35) "-./:;<=>?@hello123456he \x234 \101 "
                    166: 
                    167: -- Iteration 28 --
                    168: string(34) "./:;<=>?@hello123456he \x234 \101 "
                    169: 
                    170: -- Iteration 29 --
                    171: string(34) "./:;<=>?@hello123456he \x234 \101 "
                    172: 
                    173: -- Iteration 30 --
                    174: string(32) ":;<=>?@hello123456he \x234 \101 "
                    175: 
                    176: -- Iteration 31 --
                    177: string(31) ";<=>?@hello123456he \x234 \101 "
                    178: 
                    179: -- Iteration 32 --
                    180: string(30) "<=>?@hello123456he \x234 \101 "
                    181: 
                    182: -- Iteration 33 --
                    183: string(28) ">?@hello123456he \x234 \101 "
                    184: 
                    185: -- Iteration 34 --
                    186: string(29) "=>?@hello123456he \x234 \101 "
                    187: 
                    188: -- Iteration 35 --
                    189: string(27) "?@hello123456he \x234 \101 "
                    190: 
                    191: -- Iteration 36 --
                    192: string(26) "@hello123456he \x234 \101 "
                    193: 
                    194: -- Iteration 37 --
                    195: string(26) "@hello123456he \x234 \101 "
                    196: 
                    197: -- Iteration 38 --
                    198: string(2) "1 "
                    199: 
                    200: -- Iteration 39 --
                    201: string(5) "\101 "
                    202: 
                    203: -- Iteration 40 --
                    204: string(44) "#%\o,()*+-./:;<=>?@hello123456he \x234 \101 "
                    205: 
                    206: -- Iteration 41 --
                    207: string(5) "\101 "
                    208: 
                    209: -- Iteration 42 --
                    210: bool(false)
                    211: 
                    212: -- Iteration 43 --
                    213: string(7) "4 \101 "
                    214: 
                    215: -- Iteration 44 --
                    216: string(37) "*+-./:;<=>?@hello123456he \x234 \101 "
                    217: 
                    218: -- Iteration 45 --
                    219: string(63) "Hello,\t\n\0\n  $&!#%\o,()*+-./:;<=>?@hello123456he \x234 \101 "
                    220: *** Done ***

FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>