hola que tal necesito ayuda con un algoritmo que pueda resolver el siguiente problema:
primero tenemos una cadena que es un archivo separado por comas:
Cita: 001,"Carros, Inc. - obo Maersk Line, Inc.",5129706,5129706
002,"Empresa 2",51444444,7374784
etc......
la cadena anterior la tengo que cortar en pedazos para insertar cada campo en una base de datos,
Pero si se dan cuenta:,
Cita: 1.- dentro de la cadena "Carros, Inc. - Obo Maersk Line, Inc." hay comas, eso hace que se me desordene todo al querer cortar la cadena original en comas con algo como esto:
Código PHP:
$file = fopen ($ruta, "r");//abro el archivo
$separador = ",";//declaro mediante que caracter se tiene que separar
$delimitador = "/n";//declaro el limitador
// recorro los datos
while(($data=fgetcsv($file,2048,$separador,$delimitador))!==false){
/*formo las cadena para hacer el insert
ejemplo:
(001,"Carros, Inc. - obo Maersk Line, Inc.",5129706,5129706)
para despues hacer esto:
$query = "REPLACE INTO cat_clientesR(no_centro,empresa,no_cliente,referencia_sistema) VALUES ".$vals."";
mysql_query($query,$conexion);
*/
$vals.="(";
foreach($data as $row){
$vals.=$row;
$vals.=",";
}
$vals = substr($vals,0,-1);
$vals.="),";
}
Cita: El resultado de el codigo anterior para la primer fila seria esto:
primer campo --->582,
segundo campo-->"Tangoe,
tercer campo--> Inc. - obo Maersk Line,
cuarto campo-->Inc.",
etc....5129706,
etc....5129706,
obiamente el resultado esta mal y deberia de quedar asi:
primer campo --->582,
segundo campo-->"Tangoe,Inc. - obo Maersk Line, Inc.",
tercer campo--> 5129706,
cuarto campo-->5129706,
etc....
alguien puede ayudarme a hacer eso? o es imposible?
de antemano gracias y espero sus respuestas.