Un Comma Separated Value ( CSV ) è un file di testo che organizza più colonne o campi di dati separandoli con una virgola . E ' comune per esportare i fogli di calcolo, come quelli di Excel , in formato CSV per l'utilizzo in altre piattaforme . Se si desidera importare i file di Excel in un database MySQL , è possibile utilizzare PHP per elaborare il CSV e inviare il contenuto al database MySQL . Questo è un processo in due fasi . Il primo passo prevede l'analisi del CSV con PHP . Il secondo passo sta usando PHP per comunicare con MySQL . Istruzioni
1
esportare il file CSV da Excel e posizionarlo sul server che esegue PHP e MySQL . In Excel , aprire il menu " File " , cliccare su " Salva con nome ", poi "tipo" e " CSV ". Assegnare al nuovo file CSV qualsiasi nome che si desidera , e quando Excel avverte che si perde la formattazione , andare avanti e accettare questa avvertenza . Si riceve questo avviso perché la formattazione del testo , come grassetto, corsivo o colori , non può essere memorizzato in un file di testo .
2
Creare una variabile PHP e impostarlo per il percorso del file CSV su il server . Utilizzare la funzione PHP " fopen " come parte della dichiarazione di variabile in modo che identificare il file da aprire. Questo potrebbe essere simile :
$ file = fopen ( " myfile.csv " , " r");
La "r " indica che si sta aprendo il file in sola lettura < br . >
3
costruire un ciclo "while " che scorrere il file riga per riga e leggere ogni riga in una nuova variabile . Utilizzare lo standard di PHP funzioni ", mentre" e " feof " per elaborare queste linee , e usare " fgetcsv " per analizzare il file CSV identificato dalla variabile " fopen " . Questo ciclo potrebbe apparire o iniziare così:
mentre {
$ csv_line = fgetcsv ( $ file , 1024 ) per
Nota il numero ( feof ( $ file ) ! ) 1024, che è incluso nella funzione " fgetcsv " . Questo indica al server la quantità di dati da aspettarsi sulla linea considerata , in caratteri. Questo numero deve essere superiore a quella del più lunga linea nel file CSV .
4
Aggiungi una query MySQL per il ciclo "while" , utilizzando il built-in funzioni PHP per la manipolazione di database . Ad esempio, è possibile utilizzare la funzione " mysql_query " in combinazione con la funzione di MySQL "INSERT" per importare la riga CSV direttamente in una tabella . Il ciclo "while" potrebbe continuare così :
mysql_query ( " INSERT INTO NomeTabella ( Colonna1 , Colonna2 ) VALUES ( $ csv_line [ 0 ] , $ csv_line [ 1 ] )";
}
fclose ( $ file) ;
Qui trattiamo la riga dal file CSV come la matrice che è , utilizzando indici di matrice corretta come ad esempio " [ 0 ] " , e poi terminare la ciclo "while" con la parentesi graffa di chiusura . Infine , chiudiamo la variabile " $ file" che abbiamo precedentemente aperto all'inizio del programma .
Questo ciclo "while" ha così completato il processo di analisi del CSV in PHP e poi inviarlo al database con una query MySQL .