2016-09-26 11 views
-2

私はこのような配列をいくつか持っていますが、どのようにキーと値をPHPで分割できますか?同じ配列のキー名と値をPHPで追加します

[A0E4NL014XVM273] => Array 
    (
     [0] => qexixdb 
    ) 

[A0E4UK024XVM014_Clone] => Array 
    (
     [0] => pe8w3100 
     [1] => pe8w3100 
    ) 

しようとしたクエリ

foreach($vm_array as $vmkey=> $vmvalue){ 
    $varray[] = $vmvalue; 
    /*foreach($vmvalue as $vmvalue=> $vmvalufmarray){ 
     $vm_array[$vmkey][] = $vmvalufmarray.','; 
    }*/ 
} 

予想される出力

[A0E4UK024XVM014_Clone] => pe8w3100,pe8w3100 
+0

サブ配列を '、'で暗黙的に暗黙指定します。 –

答えて

3

implode()という機能を作成する必要があります。

foreach($vm_array as $vmkey=> $vmvalue){ 
    $varray[$vmkey] = implode(",", $vmvalue); 
} 
print_r($varray); 
2

インナーアレイ上のPHPのimplodeを使用してみてください。

foreach($vm_array as $vmkey => $vmvalue){ 

    $vm_array[$vmkey] = implode(",", $vmvalue); 

} 
0

あなたは配列でそれらを保持したい場合は私の理解は、右のであれば、私は、あなたの例を試してみましたが、私自身をシミュレートしました。

$test = array("[A0E4NL014XVM273]" => array("qexixdb"),"[A0E4UK024XVM014_Clone]" => array("pe8w3100","pe8w3100")); 


echo "<pre>"; 
    var_dump($test); 
echo "</pre>"; 

$new_arr_ = array(); 
foreach($test as $id => $value) { 

    $new_val = ""; 
    for($i = 0, $ctr_val = count($value); $i < $ctr_val; $i++) { 
     $old_id = ""; 
     if($id != $old_id) { 
      if($i < ($ctr_val - 1)) { 
       $new_val .= $value[$i] . ","; 
      } else { 
       $new_val .= $value[$i]; 
      } 
      $old_id = $id; 
     } 
    } 
    $new_arr_[] = array($id => $new_val); 
} 

echo "<pre>"; 
    var_dump($new_arr_); 
echo "</pre>"; 

それとも、1配列の場合:

$new_arr_ = array(); 
foreach($test as $key=> $value){ 
    $new_arr_[key] = implode(",", $value); 
} 

echo "<pre>"; 
    var_dump($new_arr_); 
echo "</pre>"; 

はそれがお役に立てば幸いです。

関連する問題