如何把
1 | Array( [strwarenum] => Array ( [0] => 1 [1] => 1 ) [strwareid] => Array ( [0] => 80 [1] => 79 ))
|
Copier après la connexion
转换为
1 | Array( [config_id] => [strwareid] => ,78,80 [strwarenum] => ,1,1 [config_name] => [config_desc] => [diycat_id] => )
|
Copier après la connexion
Copier après la connexion
并可以单独调用呢
回复讨论(解决方案)
设你原来的数组为$a,建一个你需要包含所有key的空数组$b(你的例子有些key在$a中没有,所以要另建)
不知道你的 78这个值从何而来,暂时当你是把79打错了
我懒得写赋值部分了,还要改你的代码,麻烦,自己写吧
1 | foreach ( $b as $k => $v ){ $a [ $k ][]= '' ; $v = array_reverse ( $a [ $k ]);}var_export( $b );
|
Copier après la connexion
自己测试
非常抱歉,实在不会把
1 | Array( [strwarenum] => Array ( [80] => 1 [78] => 1 ) [strwareid] => Array ( [0] => 80 [1] => 78 ) [config_id] => [config_name] => [config_desc] => [diycat_id] => )
|
Copier après la connexion
变为
1 | Array( [config_id] => [strwareid] => ,78,80 [strwarenum] => ,1,1 [config_name] => [config_desc] => [diycat_id] => )
|
Copier après la connexion
Copier après la connexion
1 | $arr =你的数组; foreach ( $arr as & $v ){ if ( is_array ( $v )) $v = ',' .join( ',' , $v );}print_r( $arr );
|
Copier après la connexion
PHP code?12345$arr=你的数组;foreach($arr as &$v){ if(is_array($v)) $v=','.join(',',$v);}print_r($arr);
非常感谢,解决了
1 | $ar = array ( "strwarenum" => array (1,1), "strwareid" => array (80,79)); function change( $ar ){ $arr = array (); foreach ( $ar as $key => $value ){ if ( $key == "strwareid" ){ for ( $i = count ( $ar [ $key ])-1; $i >=0; $i --){ $s = $s . "," . $ar [ $key ][ $i ]; } } if ( $key == "strwarenum" ){ for ( $i = count ( $ar [ $key ])-1; $i >=0; $i --){ $m = $m . "," . $ar [ $key ][ $i ]; } } } $arr [ 'config_id' ]= '' ; $arr [ 'strwareid' ]= $s ; $arr [ 'strwarenum' ]= $m ; $arr [ 'config_name' ]= '' ; $arr [ 'config_desc' ]= '' ; $arr [ 'diycat_id' ]= '' ; return $arr ; } echo "<pre class=" brush:php;toolbar:false ">" ; print_r(change( $ar )); echo "
|
Copier après la connexion
";Array( [config_id] => [strwareid] => ,79,80 [strwarenum] => ,1,1 [config_name] => [config_desc] => [diycat_id] => )
呃,还有连带关系?strwarenum的key和strwareid的值对应么?给两个不同的strwarenum的值看看结果是怎样
另外,你给的数据能不能写成定义形式啊 "strwarenum" => Array...,还要我逐个去改啊?!
居然结贴了……如果有对应关系,上面的各楼包括我写的那个都不能用
PHP code?123456789101112131415161718192021222324252627282930313233343536 $ar=array("strwarenum"=>array(1,1),"strwareid"=>array(80,79)); function change($ar){ $arr=array(……
其实strwarenum 是数量可以不考虑。对应每个strwareid为1也可以
strwareid是主要要获得的函数