Загрузка массива в виде файла

0

Я использую codeigniter и передаю информацию с контроллера на представление, используя:

 $this->load->view('myview', $data);

$ data - это массив и определяется как:

$data['people'] = ....

На мой взгляд, поскольку люди показывают, как

foreach($people as $person) {

echo $person->name . " " . $person->email;

}

Затем у меня есть файл, который берет массив объектов "person" и создает на нем файл csv.

На мой взгляд, у меня есть ссылка на такой файл и хотелось бы передать массив $ people.

Каков наилучший способ сделать это?

Теги:
arrays
codeigniter

2 ответа

0

Передача массива в ссылке невозможна и ее странно.
Я бы порекомендовал вам передать id конкретного человека по ссылке
а затем получить данные этого человека, запросив базу данных снова.

Например:

контроллер

class People extends CI_Controller
{
    public function __construct()
    {
        parent::__construct();
        $this->load->model('people_model');
    }

    public function people()
    {
        $data['people'] = $this->people_model->get_people();
        $this->load->view('myview', $data);
    }

    public function person_detail($person_id)
    {
        $person = $this->people_model->get_person($person_id);

        // Now you have that person detail
        // Do whatever you want

        // Write in a file
        file_put_contents('filename.txt', print_r($person, true));
    }
}


Просмотреть (myview.php)

<table>

<?php foreach($people as $person) { ?>
<tr>
<td><a href="/people/person_detail/{$person->id}"><?php echo $person->id ?></a></td>
<td><?php echo $person->name ?></td>
<td><?php echo $person->email ?></td>
</tr>
<?php } ?>

</table>
0

Вы можете создать файл CSV с помощью массива и сделать его загружаемым файлом с указанием пути.

Ссылка это

ИЛИ

Вы можете использовать команду generate table в html и преобразовать в csv с помощью javascript

Ссылка Это

  • 0
    Да, но если пользователь не хочет загружать CSV, то он создается даром и просто использует ресурсы сервера.
  • 0
    Проверьте мой отредактированный ответ, может быть полезным для вас.
Показать ещё 1 комментарий

Ещё вопросы

Сообщество Overcoder
Наверх
Меню