2010-10-19 27 views
13

È possibile aggiungere contenuto a un file .xls utilizzando PHP fwrite()?Come posso scrivere i dati in un excel utilizzando PHP

Quando provo questo usando fwrite(), il file risultante provoca un messaggio di errore in Excel 2007.

C'è un separatore specifico posso usare per raggiungere questo obiettivo?

È possibile senza una libreria di terze parti?

+2

possibile duplicato di [Alternative per PHP_excel] (http://stackoverflow.com/questions/3930975/alternative-for-php- excel) - anche se la domanda non è la stessa, la lista in là risponderà alla tua domanda. – Gordon

+0

Qual è il formato del file Excel? È un file CSV, un file BIFF5 o 8 .xls o un file .xlsx di MS Office OpenXML? –

+0

@Gordon. Leggi la domanda Mr. I ho già un excel. Voglio scrivere in quell'excel usando fwrite senza classi. . Alcuni ragazzi sono qui per votare. Non possono dare risposte. FTW – zod

risposta

16

È possibile utilizzare la libreria PhpSpreadsheet, leggere un file Excel esistente, aggiungere nuove righe/colonne, quindi scriverlo come un vero file Excel.

Disclaimer: io sono uno degli autori di questa biblioteca.

+0

Grazie. Come tu sei l'altro posso chiederti una cosa. Come sarà la prestazione se scrivo più di 65000 dischi. C'è qualche opzione per aggiungere un altro foglio quando raggiunge il limite massimo excel 65536 righe? – zod

+0

@MarkBaker: grazie ... che ha aiutato ... –

+0

@MarkBaker: è possibile scrivere in nuovo excel utilizzando la tua lib – Hitesh

0

a scrivere si può usare: Spreadsheet_Excel_Writer è uno strumento per la creazione di file di Excel senza la necessità di componenti COM

http://pear.php.net/manual/en/package.fileformats.spreadsheet-excel-writer.php ma non puoi appaend di file, solo per crearlo.

o utilizzando phpexcel (supporto excel 2007)

http://phpexcel.codeplex.com/

ed è possibile accodare vedere un esempio:

http://phpexcel.codeplex.com/Thread/View.aspx?ThreadId=82996

+0

Spreadsheet_Excel_Writer è attualmente non più mantenuto (ultima versione 2012-01-26). Causa anche l'errore "Errore file: i dati potrebbero essere andati persi." [Errore n. 12848 \t "Errore file: i dati potrebbero essere andati persi."] (Http://pear.php.net/bugs/bug.php?id=12848) [AVVISO: foglio di calcolo :: WriteExcel e Office Service Pack 3] (https://groups.google.com/forum/?fromgroups=#!topic/spreadsheet-writeexcel/Pc6kDmYgrzo) – sumid

0

se si desidera solo/necessità di creare una tabella molto semplice , devi solo creare un file *.csv che può essere aperto da excel, ma non: non puoi usare le formule in questo e non puoi fare alcun tipo di formattazione.

+2

In realtà, puoi usare le formule in un file CSV, anche se devi fare più attenzione che il formula fa riferimento alle righe e alle colonne corrette: il formato R1C1 è spesso più facile da utilizzare rispetto all'indirizzamento del formato A1. –

4

Si può cercare di creare un file CSV, in questo modo:

name;surname;blabla 
name;surname;blabla 
name;surname;blabla 
name;surname;blabla 

Excel dovrebbe mangiare questo :)

E 'comodo da usare funzioni PHP CVS: http://php.net/manual/en/function.fputcsv.php

Problemi correlati