Solucionado.
Recorro el csv, hago un explode y comparo la parte de la cadena q me interesa. Si existe esa parte de la cadena, la pisa y si no la agrega junto la otra parte, de la forma campo1;campo2
Lo unico malo es q tarda bastante
Código PHP:
$fp = fopen ("prueba.csv" , "r" );
$fp_write = fopen ( "salida.csv" , "w" );
$i=0;
$todos = array();
while(!feof($fp))
{
$linea = fgets($fp);
$linea_explode = explode(';', $linea);
if(in_array($linea_explode[0], $todos)){
$i++;
}else{
$todos[] = $linea_explode[0];
fputs ($fp_write,$linea);
}
}
//print_r($i);
fclose ( $fp );
fclose ( $fp_write );