duanpai9945 2014-10-09 09:43
浏览 37
已采纳

在php中重新填充多维数组

Does somebody knows how I can refill this kind of array? I need to insert some values instead of the 0. I make two loop, one for creating the array structure, and the another for filling the array, but when I want to file, I get an error "offset 0".

The values are integer numbers.

And I have a for loop:

$lista[$medio]  = Array();
for ($count=1; $count<=53; $count++) {      
    $lista[$medio][$count]  = 0;
}
for ($j = 1; $j <= $counter ; $j++) {    
    $f = $d[0]['f'];
    $xn= $d[0]['d'];
    $xww= explode("/",$xn);
    $kw = $xww[0];
   // Here I'm filling the list, I need the values from $f to be inserted instead of the 0 from the array. I think this is the correct way to do that:
    $lista[$medio][intval($kw)]+= $f;   
    print_r($lista);
}

// But I get "offset 0" error

Array
(
    [ge] => Array
        (
            [1] => 0
            [2] => 0
            [3] => 0
            [4] => 0
            [5] => 0
            [6] => 0
            [7] => 0
            [8] => 0
            [9] => 0
            [10] => 0
            [11] => 0
            [12] => 0
            [13] => 0
            [14] => 0
            [15] => 0
            [16] => 0
            [17] => 0
            [18] => 0
            [19] => 0
            [20] => 0
            [21] => 0
            [22] => 0
            [23] => 0
            [24] => 0
            [25] => 0
            [26] => 0
            [27] => 0
            [28] => 0
            [29] => 0
            [30] => 0
            [31] => 0
            [32] => 0
            [33] => 0
            [34] => 0
            [35] => 0
            [36] => 0
            [37] => 0
            [38] => 0
            [39] => 0
            [40] => 0
            [41] => 0
            [42] => 0
            [43] => 0
            [44] => 0
            [45] => 0
            [46] => 0
            [47] => 0
            [48] => 0
            [49] => 0
            [50] => 0
            [51] => 0
            [52] => 0
            [53] => 0
        )

)
  • 写回答

1条回答 默认 最新

  • douyou8047 2014-10-09 10:36
    关注

    you can use PHP function array_fill_key

    http://php.net/manual/de/function.array-fill-keys.php

    http://php.net/manual/de/function.array-fill.php

    Example from PHP:

    <?php
    $keys = array('foo', 5, 10, 'bar');
    $a = array_fill_keys($keys, 'Banane');
    print_r($a);
    ?>
    

    I hope works for you!

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

悬赏问题

  • ¥15 装 pytorch 的时候出了好多问题,遇到这种情况怎么处理?
  • ¥20 IOS游览器某宝手机网页版自动立即购买JavaScript脚本
  • ¥15 手机接入宽带网线,如何释放宽带全部速度
  • ¥30 关于#r语言#的问题:如何对R语言中mfgarch包中构建的garch-midas模型进行样本内长期波动率预测和样本外长期波动率预测
  • ¥15 ETLCloud 处理json多层级问题
  • ¥15 matlab中使用gurobi时报错
  • ¥15 这个主板怎么能扩出一两个sata口
  • ¥15 不是,这到底错哪儿了😭
  • ¥15 2020长安杯与连接网探
  • ¥15 关于#matlab#的问题:在模糊控制器中选出线路信息,在simulink中根据线路信息生成速度时间目标曲线(初速度为20m/s,15秒后减为0的速度时间图像)我想问线路信息是什么