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

1.1       misho       1: --TEST--
                      2: Test str_split() function : usage variations - different double quoted strings for 'str' argument 
                      3: --FILE--
                      4: <?php
                      5: /* Prototype  : array str_split(string $str [, int $split_length])
                      6:  * Description: Convert a string to an array. If split_length is 
                      7:                 specified, break the string down into chunks each 
                      8:                 split_length characters long. 
                      9:  * Source code: ext/standard/string.c
                     10:  * Alias to functions: none
                     11: */
                     12: 
                     13: /*
                     14: * passing different double quoted strings as 'str' argument to str_split()
                     15: * split_length is set to 7
                     16: */
                     17: 
                     18: echo "*** Testing str_split() : double quoted strings for 'str' ***\n";
                     19: 
                     20: //Initialize variables
                     21: $split_length = 7;
                     22: 
                     23: // different values for 'str'
                     24: $values = array(
                     25:   "",  //empty
                     26:   " ",  //space
                     27:   "1234", //with only numbers
                     28:   "simple string",  //regular string
                     29:   "It's string with quote",  //string containing single quote
                     30:   "string\tcontains\rwhite space\nchars",
                     31:   "containing @ # $ % ^ & chars", 
                     32:   "with 1234 numbers",
                     33:   "with \0 and ".chr(0)."null chars",  //for binary safe
                     34:   "with    multiple     space char",
                     35:   "Testing invalid \k and \m escape char",
                     36:   "to check with \\n and \\t" //ignoring \n and \t results
                     37: 
                     38: );
                     39: 
                     40: //loop through each element of $values for 'str' argument
                     41: for($count = 0; $count < count($values); $count++) {
                     42:   echo "-- Iteration ".($count+1)." --\n";
                     43:   var_dump( str_split($values[$count], $split_length) );
                     44: }
                     45: echo "Done"
                     46: ?>
                     47: --EXPECTF--
                     48: *** Testing str_split() : double quoted strings for 'str' ***
                     49: -- Iteration 1 --
                     50: array(1) {
                     51:   [0]=>
                     52:   string(0) ""
                     53: }
                     54: -- Iteration 2 --
                     55: array(1) {
                     56:   [0]=>
                     57:   string(1) " "
                     58: }
                     59: -- Iteration 3 --
                     60: array(1) {
                     61:   [0]=>
                     62:   string(4) "1234"
                     63: }
                     64: -- Iteration 4 --
                     65: array(2) {
                     66:   [0]=>
                     67:   string(7) "simple "
                     68:   [1]=>
                     69:   string(6) "string"
                     70: }
                     71: -- Iteration 5 --
                     72: array(4) {
                     73:   [0]=>
                     74:   string(7) "It's st"
                     75:   [1]=>
                     76:   string(7) "ring wi"
                     77:   [2]=>
                     78:   string(7) "th quot"
                     79:   [3]=>
                     80:   string(1) "e"
                     81: }
                     82: -- Iteration 6 --
                     83: array(5) {
                     84:   [0]=>
                     85:   string(7) "string    "
                     86:   [1]=>
                     87:   string(7) "contain"
                     88:   [2]=>
                     89:   string(7) "s
white"
                     90:   [3]=>
                     91:   string(7) " space
                     92: "
                     93:   [4]=>
                     94:   string(5) "chars"
                     95: }
                     96: -- Iteration 7 --
                     97: array(4) {
                     98:   [0]=>
                     99:   string(7) "contain"
                    100:   [1]=>
                    101:   string(7) "ing @ #"
                    102:   [2]=>
                    103:   string(7) " $ % ^ "
                    104:   [3]=>
                    105:   string(7) "& chars"
                    106: }
                    107: -- Iteration 8 --
                    108: array(3) {
                    109:   [0]=>
                    110:   string(7) "with 12"
                    111:   [1]=>
                    112:   string(7) "34 numb"
                    113:   [2]=>
                    114:   string(3) "ers"
                    115: }
                    116: -- Iteration 9 --
                    117: array(4) {
                    118:   [0]=>
                    119:   string(7) "with  "
                    120:   [1]=>
                    121:   string(7) "and nu"
                    122:   [2]=>
                    123:   string(7) "ll char"
                    124:   [3]=>
                    125:   string(1) "s"
                    126: }
                    127: -- Iteration 10 --
                    128: array(5) {
                    129:   [0]=>
                    130:   string(7) "with   "
                    131:   [1]=>
                    132:   string(7) " multip"
                    133:   [2]=>
                    134:   string(7) "le     "
                    135:   [3]=>
                    136:   string(7) "space c"
                    137:   [4]=>
                    138:   string(3) "har"
                    139: }
                    140: -- Iteration 11 --
                    141: array(6) {
                    142:   [0]=>
                    143:   string(7) "Testing"
                    144:   [1]=>
                    145:   string(7) " invali"
                    146:   [2]=>
                    147:   string(7) "d \k an"
                    148:   [3]=>
                    149:   string(7) "d \m es"
                    150:   [4]=>
                    151:   string(7) "cape ch"
                    152:   [5]=>
                    153:   string(2) "ar"
                    154: }
                    155: -- Iteration 12 --
                    156: array(4) {
                    157:   [0]=>
                    158:   string(7) "to chec"
                    159:   [1]=>
                    160:   string(7) "k with "
                    161:   [2]=>
                    162:   string(7) "\n and "
                    163:   [3]=>
                    164:   string(2) "\t"
                    165: }
                    166: Done

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