Home Hardware Networking Programmazione Software Domanda Sistemi
Conoscenza Informatica >> Programmazione >> PHP /MySQL Programmazione >> .

Come rimuovere CSV duplicati in PHP

PHP sta per " PHP : Hypertext Preprocessor ". Si tratta di un linguaggio di programmazione utilizzato principalmente per la generazione dinamica di contenuti web . Come molti linguaggi di programmazione , supporta CSV ( valori separati da virgola ) , che è un formato per la memorizzazione dei dati in file di testo. Le interruzioni di riga separano ogni record , e un delimitatore - come una virgola o punto e virgola - separa ogni elemento all'interno dei record . Insieme con PHP , è possibile utilizzare i file di dati CSV in applicazioni web e di mantenere i file puliti , eliminando le voci duplicate inutili . Istruzioni
1

Aprire il file contenente i dati CSV in modalità di sola lettura . Ad esempio, se il nome del file è " test.csv " , digitare quanto segue :

if ( ( $ fp = fopen ( " test.csv " , "r" ) ) == false ) {

2

ciclo su tutte le righe di dati CSV , utilizzando la funzione " fgetcsv . " I parametri più importanti della funzione sono l'handle file $ fp , il numero massimo di caratteri per linea e il delimitatore . Di solito il delimitatore per i file CSV sarà una virgola . Ad esempio, digitare :

while (! ( $ Data = fgetcsv ( $ fp , 1000 , ',' ) ) == false ) {
3

Creare un nuovo array la cui chiave sarà un hash MD5 dei dati restituiti dalla funzione " fgetcsv " . Il valore di ogni elemento dell'array saranno i dati stessi . Dal momento che i dati restituiti da " fgetcsv " è ​​un array, utilizzare la funzione " serializzare " prima di creare l'hash . Questo processo elimina automaticamente le voci duplicate , perché genera un array key duplicata , sovrascrivendo eventuali voci identiche . Ad esempio, digitare :

$ lista [ md5 ( serializzare ( $ data ) ) ] = $ data ;
4 5

riaprire il file in modalità di scrittura e ciclo attraverso ciascuna delle registrazioni del nuovo array. Ad esempio, digitare :

if ( ! ( $ Fp = fopen ( " test.csv " , "w" ) ) == false ) {

foreach ( $ lista da $ registrazione) {
6

Scrivi ciascuno dei record per il file utilizzando la funzione " fputcsv " . Che rimette tutto in formato CSV . Ad esempio, digitare :

fputcsv ( $ fp , $ disco, ' , ');
7

 

Programmazione © www.354353.com