Php 将分解结果转换为键、值中的数组

Php 将分解结果转换为键、值中的数组,php,arrays,laravel,explode,Php,Arrays,Laravel,Explode,我有这样的数据 list=7251270233&总金额=28841.28&总金额=1800&现金=1000&信用=500&银行=300&银行发件人=abc&银行收件人=pqr 使用explode在array中转换它,并得到如下结果 0:"list=7251270233" 1:"total_amount=28841.28" 2:"r_g_amount=1800" 3:"cash=1000" 4:"credit=500" 5:"bank=300" 6:"bank_from=abc" 7:"bank_

我有这样的数据

list=7251270233&总金额=28841.28&总金额=1800&现金=1000&信用=500&银行=300&银行发件人=abc&银行收件人=pqr

使用
explode
array
中转换它,并得到如下结果

0:"list=7251270233"
1:"total_amount=28841.28"
2:"r_g_amount=1800"
3:"cash=1000"
4:"credit=500"
5:"bank=300"
6:"bank_from=abc"
7:"bank_to=pqr"
现在我在
key->value
中将其转换为数组,如下所示:

array("list"=>"7251270233",
"total_amount"=>"28841.28",
"r_g_amount"=>"1800",
"cash"=>"1000",
"credit"=>"500",
"bank"=>"300",
"bank_from"=>"abc",
"bank_to"=>"pqr")
那么如何在数组中进行转换呢

<?php
$string = "list=7251270233&total_amount=28841.28&r_g_amount=1800&cash=1000&credit=500&bank=300&bank_from=abc&bank_to=pqr";

$info = explode("&",$string);
$result = array();
foreach ($info as $val) {
    $sub = explode("=",$val);
    $result[$sub[0]] = $sub[1];
}

echo "<pre>".print_r($result,1)."</pre>";
?>

使用

你可以这样做:

Array
(
    [list] => 7251270233
    [total_amount] => 28841.28
    [r_g_amount] => 1800
    [cash] => 1000
    [credit] => 500
    [bank] => 300
    [bank_from] => abc
    [bank_to] => pqr
)
输出如下所示:

使用parse_str()函数,您可以轻松地将查询字符串转换为数组。正如我在回答中所做的那样。请查收
<?php 
$str = 'list=7251270233&total_amount=28841.28&r_g_amount=1800&cash=1000&credit=500&bank=300&bank_from=abc&bank_to=pqr';
$strarr = explode('&',$str);
print_r($strarr);
foreach($strarr as $stra){
    $result[explode('=',$stra)[0]] = explode('=',$stra)[1];
}

print_r($result);
Array
(
    [list] => 7251270233
    [total_amount] => 28841.28
    [r_g_amount] => 1800
    [cash] => 1000
    [credit] => 500
    [bank] => 300
    [bank_from] => abc
    [bank_to] => pqr
)
 $query_string = "list=7251270233&total_amount=28841.28&r_g_amount=1800&cash=1000&credit=500&bank=300&bank_from=abc&bank_to=pqr";

 $data_array = parse_str($query_string, $output);

print_r($output);
Array
(
    [list] => 7251270233
    [total_amount] => 28841.28
    [r_g_amount] => 1800
    [cash] => 1000
    [credit] => 500
    [bank] => 300
    [bank_from] => abc
    [bank_to] => pqr
)