codeigniter - PHP use foreach multidimensional data outside it -
codeigniter - PHP use foreach multidimensional data outside it -
having php code:
$data['items'] = array('cars', 'bikes', 'trains'); $data['title'] = $parameters['title']; foreach ($searchresults $key => $value) { switch ($key) { case "_cars": foreach ($searchresults['_cars']['items'] $car) { preg_match('@video/([^_]+)_([^/]+)@', $car['url'], $match); $url = $match[1].'/'.$match[2]; $url = base_url().'video/'.substr($url,0,1).'d'.substr($url,1); $data['data']['car']['url'] = $url; $data['data']['car']['title'] = $car['title']; $data['data']['car']['img'] = $car['thumbnail_medium_url']; } break; // ................
how can prepare this, or doing wrong because $['data']['car'][...]
returns 1 item url, title , img outside case "_cars": foreach...
within returns data.
edit: wonder why doing print_r($data) within foreach ($searchresults['_cars']['items']...
loop returns info , outside foreach
1?
i'm not quite sure you're wanting, @ first glance, looks each iteration overwriting actual value of array key:
$data['data']['car']['url'] = $url; // overwritten each time
you need create iterator , utilize that:
$i = 0; foreach ($searchresults['_cars']['items'] $car) { preg_match('@video/([^_]+)_([^/]+)@', $car['url'], $match); $url = $match[1].'/'.$match[2]; $url = base_url().'video/'.substr($url,0,1).'d'.substr($url,1); $data['data']['car'][$i]['url'] = $url; $data['data']['car'][$i]['title'] = $car['title']; $data['data']['car'][$i]['img'] = $car['thumbnail_medium_url']; $i++; }
php codeigniter multidimensional-array foreach
Comments
Post a Comment