intentalo asi
Código PHP:
$file = fopen ($ruta, "r");
$separador = ",";
$delimitador = "/n";
$file = preg_replace_callback('/(?<=,")(.*?)(?=")/', create_function('$e', 'return str_replace(",", "#coma#", $e[1]);'), $file);
while(($data=fgetcsv($file,2048,$separador,$delimitador))!==false){
$vals.="(";
foreach($data as $row){
$row = str_replace("#coma#", ",", $row);
$vals.=$row;
$vals.=",";
}
$vals = substr($vals,0,-1);
$vals.="),";
}