Вывести запрос в csv, codeigniter - PullRequest
2 голосов
/ 24 марта 2011

В настоящее время у меня есть отчет, в котором содержится идентификационный номер пользователя и их адрес электронной почты, но я хотел бы сделать это в файле CSV, а не в таблицах и строках, как у меня сейчас.

Вот мойконтроллер

function View_Email_E()
{
$data = array();

    if($query = $this->report_model->View_Email_English())
    {
        $data['records'] = $query;
    }
$data['main_content'] = 'view_all_email_english';
$this->load->view('includes/template', $data);


}

Вот моя модель

    function View_Email_English()
{

    $query = $this->db->where(array('Dial_Up' => '0', 'Language' => 'English', 'Membership_Status' => 'Active'));
    $query = $this->db->like('Email', '@');
    $query = $this->db->get('Membership');
    return $query->result();
}

По какой-то причине мой вид не отображается в режиме кода, но это автоматически сгенерированная таблица, использующая этот фрагмент кода.Каждая строка возвращает идентификатор и адрес электронной почты из базы данных.

<?php if(isset($records)) : foreach($records as $row) : ?>

Как создать файл CSV только с полями идентификатора и адреса электронной почты?

Спасибо

Ответы [ 2 ]

1 голос
/ 11 мая 2011

Добавить

$this->db->select(array('ID','Email'));

К вашей функции View_Email_English.

1 голос
/ 24 марта 2011

Я думаю, что вы можете использовать функцию csv_from_result в dbutil, чтобы сделать это. Попробуйте что-то вроде этого:

$csvContent = $this->dbutil->csv_from_result($query);

if ( ! write_file('./path/to/file.csv', $csvContent)) {
    echo 'Unable to write the file';
} else {
    echo 'File written!';
}    

http://codeigniter.com/user_guide/database/utilities.html#csv

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