Анонимная функция в array_walk выдает ошибку на PHP 5.2 - PullRequest
0 голосов
/ 03 декабря 2018

Ниже приведена функция array_walk, которая выдает ошибку на php 5.2.У меня версия 5.2 на сцене и 5.3 на локальной и dev.Код прекрасно работает на локальной и dev php версии.

foreach($favTracks as $track_id) {
array_walk($tracks, function ($t, $k) use ($track_id, &$return) {    
    if($t['track_code'] == $track_id) {
        $trackDetails = variable_get('drf_admin_top_track_'. $k . '_news_list', array());
        $return[$track_id]  = array('articles' => 
        get_fav_details($trackDetails), 
        'trackName' => isset($t['title']) ? $t['title'] : "" );
    }        
});    
}

1 Ответ

0 голосов
/ 03 декабря 2018

Я решил проблему, выполнив код ниже.

function getTopTrackWalk($t, $k, $trackArr) {    
  if($t['track_code'] == $trackArr[0]) {
  $trackDetails = variable_get('drf_admin_top_track_'. $k . '_news_list', array());
  $trackArr[1][$trackArr[0]]  = array('articles' => 
  get_fav_details($trackDetails), 
'trackName' => isset($t['title']) ? $t['title'] : "" );
}           
}
array_walk($tracks, "getTopTrackWalk", array($track_id, &$return));  
...