Esportare dati in un foglio di calcolo, come excel, è molto semplice, specie se si usa il metodo Content Type1.
Ma se il foglio di calcolo da generare è molto complesso allora bisogna ricorrere a delle classi per la generazione.
Vediamo insieme una delle migliori classi Open Source disponibili: PHPExcel

Sviluppando un componente per Joomla che prevede la funzionalità di esportazione di una lista di articoli con relative immagini in un foglio di calcolo necessitavo di una classe semplice da usare e senza troppe dipendenze, fatto questo che mi ha fatto escludere a priori la classe Spreadsheet_Excel_Writer di PEARche, nonostante usi una libreria integrata in Joomla 1.5 (PEAR per l'appunto), risulta troppo complicata da integrare e gestire.

PHPExcell invece offre le stesse funzionalità e ha la stessa potenzialità della classe Spreadsheet_Excel_Writer ma ha molte meno dipendenze, quindi la gestione e l'integrazione risulta molto semplice. Semplicità che già si riscontra dall'installazione, pochi semplici passi per avere il componente funzionante ed utilizzabile: dopo aver effettuato il download dell'ultima versione della classe dal sito ufficiale basta copiare I file estratti in una directory dell'applicazione che stiamo sviluppando sul server web, possibilmente presente nel path di ricerca del webserver, altrimenti occorrerà modificare il set_include_path di php o i puntamenti degli include delle pagine della classe.
N.B.: questa classe richiede PHP5, se la si usa con la versione 4 di PHP si ottiene l'errore :"Parse error : sintax error unexpected T_OBJECT_OPERATOR in line"
A questo punto non rimane che provare la classe. Nell'esempio ho preso uno dei file della cartella TEST e l'ho modificato per la creazione ONFLY del foglio di calcolo, senza farlo scrivere sul disco del webserver.

Quattro Racconti


La mia prima opera narrativa, quattro storie brevi, i miei quattro Re, quattro racconti di fantasia, con forti tinte horror, per aiutarvi a non dormire...

  • Se hanno ragione le religioni animiste, ogni oggetto ha una sua identità, una sua anima. E se gli oggetti in questione avessero un'indole maligna?

  • Siamo sicuri di voler affidare il nostro futuro all'intelligenza artificiale? Abbiamo la certezza che un giudizio assolutamente oggettivo e privo di vizi possa guidare la nostra specie verso tempi di pace e prosperità?
    Possiamo fidarci delle cure amorevoli di una fredda macchina??

  • Una vita sfortunata, una serie di rimpianti che negli anni si accumulano, stratificano. Può la disperazione, per quanto intensa e profonda, prendere forma e divorarci dall'interno? Divenire un compagno di vita, tangibile, al nostro fianco mentre camminiamo, sul nostro grembo mentre siamo seduti, come un animale da compagnia??
  • Tra i bisogni primordiali, la necessità di assumere cibo è forse quello che più a contribuito alla nostra evoluzione.
    Quello che più fortemente ci spinge, ci motiva, ci dispera.
    La scarsità di cibo ci ha spinto in ogni angolo del mondo in cerca di terre fertili da coltivare, ha spinto la nostra intelligenza a crescere per poter trovare nuovi modi e tecnologie per rendere i campi più produttivi, ha spinto l'evoluzione delle strutture sociali grazie agli scambi economici tra villaggi e nazioni, ci ha fatto progredire.
    Ma spinge anche i nostri istinti più animaleschi.
    Un animale affamato è una belva sanguinaria e spietata.
    Ed un animale affamato ed intelligente come un essere umano è capace di tutto....
     
     

Quattro Racconti - Storie brevi per non dormire

ISBN Libro:9788892305083

Anno pubblicazione:2023

Formato:11,4x17,2

Foliazione:144

Copertina:morbida

Interno:bn

Genere: Narrativa / Letterature - horror

Distribuzione:

IlMioLibro Self Pubblishing

Amazon

laFeltrinelli

IBS

 

 

 

Questo è quanto. Semplice no?
1) tale metodo consiste nel far credere al browser che l'html generato da php sia in realtà un foglio di calcolo, per far ciò basta specificare il tipo di file negli header della pagina html come riportato in esempio

header("Content-type: application/vnd.ms-excel");
header("Content-disposition: attachment; filename=FileGen.xls");
header("Pragma: no-cache");
header("Expires: 0");
print "$header\n$data";


la variabile $data è una tabella HTML che rappresenta il foglio di calcolo vero e proprio. E' possibile inserire delle formule nelle celle ma non immagini o impostare proprietà avanzate.
We use cookies
Attenzione! Questo sito utilizza i cookie tecnici e di terze parti per poter fornire i servizi.