Foreach не повторяется несколько раз - PullRequest
0 голосов
/ 11 июля 2020

Он запускается через массив, проверяя повторения, сохраняя только уникальный session_id (и это работает без каких-либо проблем), проблема в том, что каждый раз, когда он находит повторяющийся уникальный идентификатор, он должен заменять вторую дату на $ result [$ i-1] [3] = $ val ['дата']; , что позволяет нам контролировать время между первым и последним идентификатором сеанса (создавая время сеанса).

Однако, когда он находит первое повторение, он сохраняет и не сохраняет никаких других (мы можем иметь, например, 10 повторов.

Каждый код

   foreach($parsed['results'] as $val){
        if ($i>0) {
            $y = $i - 1;
        }
         if($i==0){
            $result[] = [
                $val['source'],
                $val['session_id'],
                $val['date'],
                $val['date'],
            ];
           
            $i++;
        }else if ($val['session_id']!=0){
          $y=0;
          
           for ($j=1;$j<=count($val);$j++)
           
               {
       
                if($val['session_id']==$result[$i-1][1]    )
                {
                $result[$i-1][3] = $val['date']; 
                break;
                
                }
                else{
                   
            
                    $result[] = [
                        $val['source'],
                        $val['session_id'],
                        $val['date'],
                        $val['date'],
                   
                     ];
         
             
            }
            $i++;
        }
     
    
}
    else{}
    }

Результат

Array ( [0] => Array ( [0] => Product#0 [1] => ripkd6im70d7qn [2] => 2020-07-06T23:58:22+00:00 [3] => 2020-07-06T23:58:22+00:00 ) [1] => Array ( [0] => Product#1 [1] => 89m1s1qgleelo [2] => 2020-07-06T23:58:20+00:00 [3] => 2020-07-06T23:58:19+00:00 ) [2] => Array ( [0] => Product#2 [1] => 5rpf097c3n7q4[2] => 2020-07-06T23:55:49+00:00 [3] => 2020-07-06T23:55:47+00:00 ) [3] => Array ( [0] => Product#3 [1] => 3p04fkejncd [2] => 2020-07-06T23:46:13+00:00 [3] => 2020-07-06T23:46:11+00:00 ) [4] => Array ( [0] => Product#4 [1] => 7qa1p9pmti1mb2r [2] => 2020-07-06T23:45:00+00:00 [3] => 2020-07-06T23:44:59+00:00 )
...