1--TEST-- 2mb_parse_str() test 2 3--SKIPIF-- 4<?php extension_loaded('mbstring') or die('skip mbstring not available'); ?> 5--INI-- 6arg_separator.input=&# 7--FILE-- 8<?php 9$queries = array( 10 "foo=abc#bar=def&fubar=ghi", 11 "%2bfoo=def&-bar=jkl#+fubar", 12 " foo[]=abc&foo[]=def#foo[]=ghi#bar[]=#foo[]&fubar[]==" 13); 14function test($query) { 15 $foo = ''; 16 $bar = ''; 17 $fubar = ''; 18 mb_parse_str($query, $array); 19 var_dump($array); 20 var_dump($foo); 21 var_dump($bar); 22 var_dump($fubar); 23 mb_parse_str($query); 24 var_dump($foo); 25 var_dump($bar); 26 var_dump($fubar); 27} 28foreach ($queries as $query) { 29 test($query); 30} 31?> 32--EXPECTF-- 33array(3) { 34 ["foo"]=> 35 string(3) "abc" 36 ["bar"]=> 37 string(3) "def" 38 ["fubar"]=> 39 string(3) "ghi" 40} 41string(0) "" 42string(0) "" 43string(0) "" 44 45Deprecated: mb_parse_str(): Calling mb_parse_str() without the result argument is deprecated in %s on line %d 46string(3) "abc" 47string(3) "def" 48string(3) "ghi" 49array(3) { 50 ["+foo"]=> 51 string(3) "def" 52 ["-bar"]=> 53 string(3) "jkl" 54 ["fubar"]=> 55 string(0) "" 56} 57string(0) "" 58string(0) "" 59string(0) "" 60 61Deprecated: mb_parse_str(): Calling mb_parse_str() without the result argument is deprecated in %s on line %d 62string(0) "" 63string(0) "" 64string(0) "" 65array(3) { 66 ["foo"]=> 67 array(4) { 68 [0]=> 69 string(3) "abc" 70 [1]=> 71 string(3) "def" 72 [2]=> 73 string(3) "ghi" 74 [3]=> 75 string(0) "" 76 } 77 ["bar"]=> 78 array(1) { 79 [0]=> 80 string(0) "" 81 } 82 ["fubar"]=> 83 array(1) { 84 [0]=> 85 string(1) "=" 86 } 87} 88string(0) "" 89string(0) "" 90string(0) "" 91 92Deprecated: mb_parse_str(): Calling mb_parse_str() without the result argument is deprecated in %s on line %d 93array(4) { 94 [0]=> 95 string(3) "abc" 96 [1]=> 97 string(3) "def" 98 [2]=> 99 string(3) "ghi" 100 [3]=> 101 string(0) "" 102} 103array(1) { 104 [0]=> 105 string(0) "" 106} 107array(1) { 108 [0]=> 109 string(1) "=" 110} 111