Annotation of embedaddon/php/ext/standard/tests/general_functions/parse_ini_basic.phpt, revision 1.1.1.2
1.1 misho 1: --TEST--
2: parse_ini_file() tests
3: --ENV--
4: basicval=FUBAR_VARIABLE
5: basicqval=FUBAR_QUOTES_VARIABLE
6: --FILE--
7: <?php
8:
9: $ini_file = dirname(__FILE__)."/parse_ini_basic.data";
10:
11: define('TEST_CONSTANT', 'this_is_test_constant');
12:
13: var_dump(parse_ini_file($ini_file, 1));
14:
15: echo "Done.\n";
16: ?>
17: --EXPECTF--
18: array(26) {
19: ["basic"]=>
20: array(15) {
21: ["basicval"]=>
22: string(3) "bar"
23: ["longval"]=>
24: string(5) "12345"
25: ["with.dot"]=>
26: string(7) "fooobar"
27: ["boolon"]=>
28: string(1) "1"
29: ["booltrue"]=>
30: string(1) "1"
31: ["boolyes"]=>
32: string(1) "1"
33: ["booloff"]=>
34: string(0) ""
35: ["boolfalse"]=>
36: string(0) ""
37: ["boolnone"]=>
38: string(0) ""
39: ["boolno"]=>
40: string(0) ""
41: ["string"]=>
42: string(34) "asdadfsdjkslkj ¡@£$$ { }[ ]/%#¤"
43: ["sqstring"]=>
44: string(14) "adsasdadasdasd"
45: ["dqstring"]=>
46: string(51) "asdadfsdjkslkj ¡@£$$ { } !^~|¥¥{[()/)&/% ¤ # #"
47: ["php_constant"]=>
1.1.1.2 ! misho 48: string(1) "2"
1.1 misho 49: ["user_constant"]=>
50: string(21) "this_is_test_constant"
51: }
52: ["basic with whitespace"]=>
53: array(13) {
54: ["basicval"]=>
55: string(3) "bar"
56: ["longval"]=>
57: string(5) "12345"
58: ["with.dot"]=>
59: string(7) "fooobar"
60: ["boolon"]=>
61: string(1) "1"
62: ["booltrue"]=>
63: string(1) "1"
64: ["boolyes"]=>
65: string(1) "1"
66: ["booloff"]=>
67: string(0) ""
68: ["boolfalse"]=>
69: string(0) ""
70: ["boolnone"]=>
71: string(0) ""
72: ["boolno"]=>
73: string(0) ""
74: ["sqstring"]=>
75: string(14) "adsasdadasdasd"
76: ["dqstring"]=>
77: string(41) "asdadfsdjkslkj ¡@£$$€¥¥{[()/)&/%#¤"
78: ["php_constant"]=>
1.1.1.2 ! misho 79: string(1) "2"
1.1 misho 80: }
81: ["comments"]=>
82: array(1) {
83: ["somecomment"]=>
84: string(15) "comment follows"
85: }
86: ["variables"]=>
87: array(8) {
88: ["var1"]=>
89: string(14) "FUBAR_VARIABLE"
90: ["var2"]=>
91: string(18) "FUBAR_VARIABLE/foo"
92: ["var3"]=>
93: string(18) "foo/FUBAR_VARIABLE"
94: ["var4"]=>
95: string(22) "foo/FUBAR_VARIABLE/foo"
96: ["quoted_var1"]=>
97: string(21) "FUBAR_QUOTES_VARIABLE"
98: ["quoted_var2"]=>
99: string(25) "FUBAR_QUOTES_VARIABLE/foo"
100: ["quoted_var3"]=>
101: string(25) "foo/FUBAR_QUOTES_VARIABLE"
102: ["quoted_var4"]=>
103: string(29) "foo/FUBAR_QUOTES_VARIABLE/foo"
104: }
105: ["offset values"]=>
106: array(6) {
107: ["foo1"]=>
108: array(2) {
109: [0]=>
110: string(14) "basic offset 1"
111: [1]=>
112: string(14) "basic offset 2"
113: }
114: ["foo2"]=>
115: array(1) {
116: [123]=>
117: string(11) "long offset"
118: }
119: ["foo3"]=>
120: array(1) {
121: ["abc"]=>
122: string(13) "string offset"
123: }
124: ["foo4"]=>
125: array(4) {
126: [0]=>
127: string(15) "quoted offset 1"
128: [" "]=>
129: string(15) "quoted offset 2"
130: ["sqfoobar"]=>
131: string(20) "quoted string offset"
132: ["dqfoobar"]=>
133: string(20) "single quoted offset"
134: }
135: ["foo6"]=>
136: array(4) {
137: ["FUBAR_VARIABLE"]=>
138: string(8) "variable"
139: ["FUBAR_VARIABLE/foo"]=>
140: string(22) "variable with string 1"
141: ["foo/FUBAR_VARIABLE"]=>
142: string(22) "variable with string 2"
143: ["foo/FUBAR_VARIABLE/foo"]=>
144: string(22) "variable with string 3"
145: }
146: ["foo7"]=>
147: array(4) {
148: ["FUBAR_QUOTES_VARIABLE"]=>
149: string(17) "quoted variable 1"
150: ["FUBAR_QUOTES_VARIABLE/foo"]=>
151: string(17) "quoted variable 2"
152: ["foo/FUBAR_QUOTES_VARIABLE"]=>
153: string(17) "quoted variable 3"
154: ["foo/FUBAR_QUOTES_VARIABLE/foo"]=>
155: string(17) "quoted variable 4"
156: }
157: }
158: ["non value"]=>
159: array(4) {
160: ["novalue_option1"]=>
161: string(0) ""
162: ["novalue_option2"]=>
163: string(0) ""
164: ["novalue_option3"]=>
165: string(0) ""
166: ["novalue_option4"]=>
167: array(3) {
168: [0]=>
169: string(0) ""
170: [1]=>
171: string(0) ""
172: [2]=>
173: string(0) ""
174: }
175: }
176: ["Quoted strings and variables in sections"]=>
177: array(0) {
178: }
179: ["FUBAR_VARIABLE"]=>
180: array(0) {
181: }
182: ["FUBAR_VARIABLE/foo"]=>
183: array(0) {
184: }
185: ["foo/FUBAR_VARIABLE"]=>
186: array(0) {
187: }
188: ["foo/FUBAR_VARIABLE/foo"]=>
189: array(0) {
190: }
191: ["FUBAR_QUOTES_VARIABLE"]=>
192: array(0) {
193: }
194: ["FUBAR_QUOTES_VARIABLE/foo"]=>
195: array(0) {
196: }
197: ["foo/FUBAR_QUOTES_VARIABLE"]=>
198: array(0) {
199: }
200: ["foo/FUBAR_QUOTES_VARIABLE/foo"]=>
201: array(0) {
202: }
203: ["PATH=FUBAR_VARIABLE/no/quotes"]=>
204: array(0) {
205: }
206: ["PATH=FUBAR_VARIABLE/all/quoted"]=>
207: array(0) {
208: }
209: ["01"]=>
210: array(2) {
211: ["e"]=>
212: string(1) "e"
213: ["f"]=>
214: string(1) "f"
215: }
216: ["02"]=>
217: array(2) {
218: ["g"]=>
219: string(1) "g"
220: ["h"]=>
221: string(1) "h"
222: }
223: [1]=>
224: array(2) {
225: ["a"]=>
226: string(1) "a"
227: ["b"]=>
228: string(1) "b"
229: }
230: [2]=>
231: array(2) {
232: ["c"]=>
233: string(1) "c"
234: ["d"]=>
235: string(1) "d"
236: }
237: ["0815"]=>
238: array(1) {
239: ["bla"]=>
240: string(3) "bla"
241: }
242: ["bug #43923"]=>
243: array(3) {
244: ["curly1"]=>
245: string(1) "{"
246: ["curly2"]=>
247: string(1) "{"
248: ["curly3"]=>
249: string(1) "{"
250: }
251: ["bug #44019"]=>
252: array(6) {
253: ["concatenation_before"]=>
254: string(37) "this_is_test_constant+some_text_after"
255: ["concatenation_middle"]=>
256: string(54) "some_text_before+this_is_test_constant+some_text_after"
257: ["concatenation_after"]=>
258: string(38) "some_text_before+this_is_test_constant"
259: ["concatenation_nows_before"]=>
260: string(37) "this_is_test_constant+some_text_after"
261: ["concatenation_nows_middle"]=>
262: string(54) "some_text_before+this_is_test_constant+some_text_after"
263: ["concatenation_nows_after"]=>
264: string(38) "some_text_before+this_is_test_constant"
265: }
266: ["bug #43915"]=>
267: array(3) {
268: ["ini_with-hyphen"]=>
269: string(26) "with hyphen and underscore"
270: ["ini.with-hyphen"]=>
271: string(14) "dot and hyphen"
272: ["ini-with.hyphen"]=>
273: string(14) "hyphen and dot"
274: }
275: ["windows paths"]=>
276: array(2) {
277: ["winpath1"]=>
278: string(69) "c:\some windows\path\test\new\r\quote " here\single ' quote\some more"
279: ["winpath2"]=>
280: string(13) "special case\"
281: }
282: }
283: Done.
FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>