Usare PHPExcel con CodeIgniter
PHPExcel è un'ottima libreria per creare file excel con PHP.
Ne ho già parlato in passato, ed ora useremo questa libreria dentro al framework CodeIgniter.
Prima di tutto scaricate la libreria da qua.
Dentro al file zip identificate la cartella Classes; il suo contenuto mettetelo dentro application/third_party.
A questo punto create un file nominato excel.php dentro a application/libraries:
<?php
if (!defined('BASEPATH'))
exit('No direct script access allowed');require_once APPPATH . '/third_party/PHPExcel.php';
class Excel extends PHPExcel {
public function __construct() {
parent::__construct();
}}
Questo sarà il file che noi richiameremo nel controller, e altro non fa che richiamare la classe PHPExcel.
A questo punto procediamo nella creazione del model che eseguirà la query su db, e che richiameremo nel controller; ad esempio:
<?php
class Excel_model extends CI_Model {
public function getEntrate() {
$this->db->select('entrata_valore, causale_nome, conto_nome, entrata_data, entrata_note');
$this->db->from('entrate');
$this->db->join('causali', 'entrate.causale_id = causali.causale_id');
$this->db->join('conti', 'entrate.conto_id = conti.conto_id');
$this->db->order_by('entrata_data', 'desc');
$this->db->limit(50);
$query = $this->db->get();
return $query->result();
}}
Se non volete prendere tutte le colonne della tabella, dovete specificare quali volete, altrimenti ve le ritroverete tutte nel file excel.