繁体   English   中英

将键值对添加到多维数组

[英]Add key-value-pair to multidimensional array

我有一个二维数组,我试图循环我的外部数组$jsonarray ,并根据开关的 output 向内部 arrays 添加一个'color'键值对。 当我在 JSON 中显示 output 时, 'color'字段都设置为 null。 $jsonarray的结构如下:

$jsonarray= [
    0=> [
        'deadline'     => 'deadline',
        'duedate'  => 'duedate',],
    1=> [
        'deadline'     => 'deadline',
        'duedate'  => 'duedate',],

我的代码看起来像这样:

    $i = 0;
    $keys = array_keys($jsonarray);
    for ($k = 0; $k < count($jsonarray); $k++){
   foreach ($jsonarray[$keys[$k]] as $key => $value) {
     $color = 0;
     switch ($i) {
       case 0:
         $color = '#AED5F1';
         break;
       case 1:
         $color = '#F7D590';
         break;
       case 2:
         $color = '#EE8970';
         break;
     }
    array_push($jsonarray[$k]['color'], $color);
     $i++;
      }
    }

我怎样才能解决这个问题?

尝试这个:

foreach ($jsonarray as $i => &$value) {
    switch ($i) {
        case 0:
            $value['color'] = '#AED5F1';
            break;
        case 1:
            $value['color'] = '#F7D590';
            break;
        case 2:
            $value['color'] = '#EE8970';
            break;
    }
}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM