2012-01-10 20 views

risposta

50

Si carica un file in PHPExcel utilizzando un lettore e il metodo load(), quindi si salva il file utilizzando uno scrittore e il metodo save() ... ma PHPExcel non è a conoscenza della sorgente dell'oggetto PHPExcel. non importa se lo hai caricato da un file (o da quale tipo di file) o lo hai creato a mano.

Come tale, non vi è alcun concetto di "apertura per lettura/scrittura". Basta leggere il file per nome e salvare nello stesso nome file. Ciò sovrascriverà il file originale con tutte le modifiche apportate al tuo script.

EDIT

Esempio

error_reporting(E_ALL); 
set_time_limit(0); 

date_default_timezone_set('Europe/London'); 
set_include_path(get_include_path() . PATH_SEPARATOR . './Classes/'); 

include 'PHPExcel/IOFactory.php'; 

$fileType = 'Excel5'; 
$fileName = 'testFile.xls'; 

// Read the file 
$objReader = PHPExcel_IOFactory::createReader($fileType); 
$objPHPExcel = $objReader->load($fileName); 

// Change the file 
$objPHPExcel->setActiveSheetIndex(0) 
      ->setCellValue('A1', 'Hello') 
      ->setCellValue('B1', 'World!'); 

// Write the file 
$objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, $fileType); 
$objWriter->save($fileName); 

E posso suggerire di leggere la documentazione, e guardare il codice di esempio in/test

+3

Potrebbe scrivere il codice di esempio per spiegare questo? Non capisco quando parli di 'usando un lettore e il metodo load(), quindi salva quel file usando uno scrittore e il metodo save()' stai parlando di due oggetti diversi, (un lettore, uno scrittore) ma Ho bisogno di aprire il file, modificare alcune celle e salvare lo stesso oggetto in un file. – Petruza

+0

questo può causare un "Dimensioni di memoria consentite di byte xxxx esaurite", può essere risolto? – daver

+0

È probabile che sia possibile risolvere i consigli e le raccomandazioni documentati per la gestione della memoria, ad esempio l'utilizzo della cache della cella –

Problemi correlati