簡體   English   中英

在php中為同一個數組添加鍵名和值

[英]add the key name and value for the same array in 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

您需要創建一個名為implode()的函數。

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

嘗試在內部數組上使用 PHP 的implode

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

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

}

我嘗試了您的示例並模擬了我自己的示例,如果我的理解正確,如果您想將它們保留在數組中。

$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>";

或者如果只有一個數組:

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

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

希望能幫助到你。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM