Передача 2 типов переменных массива в файлы вида codeigniter - PullRequest
2 голосов
/ 17 августа 2010

Если у меня в массиве $ data [] и $ another_data [], как мы передаем оба типа данных в файлы представления?при условии, что реализация codeigniter похожа на $ this-> load-> view ('view_page', $ data)

Ответы [ 4 ]

9 голосов
/ 17 августа 2010

Если вы можете гарантировать уникальность ключей массива для двух массивов, вы можете использовать array_merge для объединения двух массивов перед переходом к представлению.

$this->load->view('view_page', array_merge($data, $another_data));

В противном случае вы можете создать родительский массив и сохранить его.оба как подмассивы.

$parent_data = array('data' => $data, 'another_data' => $another_data);
$this->load->view('view_page', $parent_data);
3 голосов
/ 18 августа 2010

Попробуйте это:

$data['array1'] = $array1;
$data['array2'] = $array2;
this->load->view('view_page', $data);

Затем, по вашему мнению, получите доступ к двум массивам как $array1 и $array2.

2 голосов
/ 19 августа 2010

Просто назначьте их в качестве дочерних массивов массива, который вы передаете в представление. Я всегда создаю массив $view_data в контроллере, а затем отправляю его в представление, используя $this->load->view('layout', $view_data);

Вот пример того, что я имею в виду:

$view_data['page_title'] = 'Array Examples';
$view_data['view_file'] = 'examples/array';
$view_data['array_one'] = array('apples', 'bananas', 'pears');
$view_data['array_two'] = array('ford', 'skoda', 'peugeot');
$this->load->view('layout', $view_data);

Затем в представлении вы можете получить к ним доступ следующим образом:

<code><h6>List of fruits:</h6>
<pre><?php print_r($array_one); ?>
Список автомобилей:
<?php print_r($array_two); ?>

Надеюсь, это поможет.

0 голосов
/ 25 октября 2016
$this->load->view("first"=>demo, "second"=>demo2);

foreach( $first->array_result()  as $result )
{
    $result['test'];
}

foreach( $second->array_result()  as $result )
{
    $result['test'];
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...