如何从之前的填充数组中填充空值?

时间:2019-01-09 15:49:00

标签: laravel

如何在填充数组之前填充空值?

$array = unserialize(file_get_contents('file/temp/'.$request->name_file));

foreach ($array[0] as $key => $value) {
    if ($key>11) {
        if ($value[0]) {
            echo $value[2]." | ".$value[3]." | ".$value[4]." | ".$value[5]." | ";
            $a = $value[2];
            echo "<br>";
        }
        if ($value[0]==null) {
            echo "=>kosong";
            echo $a;
            echo "<br>";
        }
    }
}

输出为:

SBP-27/WBC.13/BD.04/2017 | 2017-06-10 | 2017-06-10 | Rasau | 
=>empty
=>empty
SBP-24/WBC.13/BD.04/2017 | 2017-06-07 | 2017-06-07 | Palangkaraya | 
=>empty
=>empty
=>empty

我想要的是:

  

SBP-27 / WBC.13 / BD.04 / 2017 | 2017-06-10 | 2017-06-10 |拉绍|

     

SBP-27 / WBC.13 / BD.04 / 2017 | 2017-06-10 | 2017-06-10 |拉绍|

     

SBP-27 / WBC.13 / BD.04 / 2017 | 2017-06-10 | 2017-06-10 |拉绍|

     

SBP-27 / WBC.13 / BD.04 / 2017 | 2017-06-10 | 2017-06-10 |拉绍|

     

SBP-24 / WBC.13 / BD.04 / 2017 | 2017-06-07 | 2017-06-07 |帕兰卡拉亚|

     

SBP-24 / WBC.13 / BD.04 / 2017 | 2017-06-07 | 2017-06-07 |帕兰卡拉亚|

     

SBP-24 / WBC.13 / BD.04 / 2017 | 2017-06-07 | 2017-06-07 |帕兰卡拉亚|

     

SBP-24 / WBC.13 / BD.04 / 2017 | 2017-06-07 | 2017-06-07 |帕兰卡拉亚|

2 个答案:

答案 0 :(得分:0)

foreach ($array[0] as $key => $value) 
  {
     if ($key>11) 
     {
        if ($value[0]) 
         {
            $value2 = $value[2];
            $value3 = $value[3];
            $value4 = $value[4];
            $value5 = $value[5];

            $a = $value[2];
            echo "<br>";
         }

         echo $value2." | ".$value3." | ".$value4." | ".$value5." | ";
         echo "<br>";
        if($value[0]==null) 
        {
           echo "=>kosong";
           echo $a;
           echo "<br>";

        }
   }
}

答案 1 :(得分:0)

$array[0]=[[], [], [], [], [], [], [], [], [], [], [], [],
          ['data1', 'data2', 'SBP-27/WBC.13/BD.04/2017', '2017-06-10', '2017-06-10', 'Rasau'],
          [], [],
          ['data1', 'data2', 'SBP-27/WBC.13/BD.04/2017', '2017-06-07', '2017-06-07', 'Palangkaraya'], 
          [], [], []];

$previous_value=''; // initialise previous value
foreach ($array[0] as $key => $value) {
    if ($key>11) {
        if (!empty($value[0])) 
        {
            $display=$value[2].' | '.$value[3].' | '.$value[4].' | '.$value[5].'<br/>';
            echo $display;
            $previous_value=$display; // assign to previous value
        } else {
            echo $previous_value; // will display data before empty value
        }
    }
}
  

上面的代码将显示:
    SBP-27 / WBC.13 / BD.04 / 2017 | 2017-06-10 | 2017-06-10 |拉绍
    SBP-27 / WBC.13 / BD.04 / 2017 | 2017-06-10 | 2017-06-10 |拉绍
    SBP-27 / WBC.13 / BD.04 / 2017 | 2017-06-10 | 2017-06-10 |拉绍
    SBP-27 / WBC.13 / BD.04 / 2017 | 2017-06-07 | 2017-06-07 |帕兰卡拉亚
    SBP-27 / WBC.13 / BD.04 / 2017 | 2017-06-07 | 2017-06-07 |帕兰卡拉亚
    SBP-27 / WBC.13 / BD.04 / 2017 | 2017-06-07 | 2017-06-07 |帕兰卡拉亚
    SBP-27 / WBC.13 / BD.04 / 2017 | 2017-06-07 | 2017-06-07 |帕兰卡拉亚