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>