php操作字符串转换成数组、、、parse_str(字符串转换成PHP数组)

php操作字符串转换成数组


今天在php论坛中看到以为朋友发了一个帖子请教php如何把字符串转换成数组;作为php程序员的新一第一反应是联想到explode(),implode()这两个函数。新一也是用里面的函数进行转换成数组的。

con[1]=28&selt[1]=1&con[2]=29&selt[2]=4&con[3]=26&selt[3]=4

&con[4]=30&selt[4]=2&con[5]=4&selt[5]=1&con[6]=11&con[7]=12

上面就是网友需要转换成PHP数组的字符串;下面也是新一提供PHP转换代码

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
$str = 'con[1]=28&selt[1]=1&con[2]=29&selt[2]=4&con[3]=26&selt[3]=4&con[4]=30&selt[4]=2&con[5]=4&selt[5]=1&con[6]=11&con[7]=12' ;
$arr = explode ( '&' , $str );
$arr2 = array ();
foreach ( $arr as $k => $v ){
         $arr = explode ( '=' , $v );
         $arr2 [ $k ] = $arr [1];
}
print_r( $arr2 );
?>
//输出
Array
(
     [0] => 28
     [1] => 1
     [2] => 29
     [3] => 4
     [4] => 26
     [5] => 4
     [6] => 30
     [7] => 2
     [8] => 4
     [9] => 1
     [10] => 11
     [11] => 12
)
//第二个
$str = 'con[1]=28&selt[1]=1&con[2]=29&selt[2]=4&con[3]=26&selt[3]=4&con[4]=30&selt[4]=2&con[5]=4&selt[5]=1&con[6]=11&con[7]=12' ;
$arr = explode ( '&' , $str );
$arr2 = array ();
foreach ( $arr as $k => $v ){
         $arr = explode ( '=' , $v );
         $arr2 [ $arr [0]] = $arr [1];
}
print_r( $arr2 );
?>
//输出
Array
(
     [con[1]] => 28
     [selt[1]] => 1
     [con[2]] => 29
     [selt[2]] => 4
     [con[3]] => 26
     [selt[3]] => 4
     [con[4]] => 30
     [selt[4]] => 2
     [con[5]] => 4
     [selt[5]] => 1
     [con[6]] => 11
     [con[7]] => 12
)

新一的PHP代码也可以解决字符串转换成数组的问题。最后phper网友应该在手册上面查到了parse_str()函数就可以把字符串转换成PHP数组;下面介绍一下parse_str()函数的说明让自己在脑子中好有印象.
parse_str() 函数把查询字符串解析到变量中。

parse_str(string,array)
string:需要转换的字符串;
array:返回到一个数组中;
如果没有设置array的话就覆盖同名变量

你可能感兴趣的:(集群应用)