2 Test parse_str() function : basic functionality
5 filter.default=unsafe_raw
8 /* Prototype : void parse_str ( string $str , array &$arr )
9 * Description: Parses the string into variables
10 * Source code: ext/standard/string.c
13 echo "*** Testing parse_str() : basic functionality ***\n";
15 echo "\nTest string with array values and results array\n";
16 $s1 = "first=abc&a[]=123&a[]=false&b[]=str&c[]=3.5&a[]=last";
17 var_dump(parse_str($s1, $res3_array));
18 var_dump($res3_array);
20 echo "\nTest string containing numerical array keys\n";
21 $str = "arr[1]=sid&arr[4]=bill";
22 var_dump(parse_str($str, $res));
25 echo "\nTest string containing associative keys\n";
26 $str = "arr[first]=sid&arr[forth]=bill";
27 var_dump(parse_str($str, $res));
30 echo "\nTest string with encoded data\n";
31 $s1 = "a=%3c%3d%3d%20%20foo+bar++%3d%3d%3e&b=%23%23%23Hello+World%23%23%23";
35 echo "\nTest string with single quotes characters\n";
36 $s1 = "firstname=Bill&surname=O%27Reilly";
37 var_dump(parse_str($s1, $res));
40 echo "\nTest string with backslash characters\n";
41 $s1 = "sum=10%5c2%3d5";
42 var_dump(parse_str($s1, $res));
45 echo "\nTest string with double quotes data\n";
46 $s1 = "str=A+string+with+%22quoted%22+strings";
47 var_dump(parse_str($s1, $res));
50 echo "\nTest string with nulls\n";
51 $s1 = "str=A%20string%20with%20containing%20%00%00%00%20nulls";
52 var_dump(parse_str($s1, $res));
55 echo "\nTest string with 2-dim array with numeric keys\n";
56 $str = "arr[3][4]=sid&arr[3][6]=fred";
57 var_dump(parse_str($str, $res));
60 echo "\nTest string with 2-dim array with null keys\n";
61 $str = "arr[][]=sid&arr[][]=fred";
62 var_dump(parse_str($str, $res));
65 echo "\nTest string with 2-dim array with non-numeric keys\n";
66 $str = "arr[one][four]=sid&arr[three][six]=fred";
67 var_dump(parse_str($str, $res));
70 echo "\nTest string with 3-dim array with numeric keys\n";
71 $str = "arr[1][2][3]=sid&arr[1][2][6]=fred";
72 var_dump(parse_str($str, $res));
77 *** Testing parse_str() : basic functionality ***
79 Test string with array values and results array
105 Test string containing numerical array keys
117 Test string containing associative keys
129 Test string with encoded data
132 string(17) "<== foo bar ==>"
134 string(17) "###Hello World###"
137 Test string with single quotes characters
146 Test string with backslash characters
153 Test string with double quotes data
157 string(30) "A string with "quoted" strings"
160 Test string with nulls
164 string(34) "A string with containing
\0\0\0 nulls"
167 Test string with 2-dim array with numeric keys
182 Test string with 2-dim array with null keys
200 Test string with 2-dim array with non-numeric keys
218 Test string with 3-dim array with numeric keys