Foros del Web » Programando para Internet » PHP »

Comillas dobles en fichero csv

Estas en el tema de Comillas dobles en fichero csv en el foro de PHP en Foros del Web. Buenas compañeros, llevo un tiempo intentando crear un fichero .csv con php y necesito que todos los campos vayan rodeados de comillas dobles. La informacion ...
  #1 (permalink)  
Antiguo 16/09/2015, 09:51
 
Fecha de Ingreso: enero-2015
Ubicación: Madrid
Mensajes: 76
Antigüedad: 4 años, 11 meses
Puntos: 5
Comillas dobles en fichero csv

Buenas compañeros, llevo un tiempo intentando crear un fichero .csv con php y necesito que todos los campos vayan rodeados de comillas dobles.

La informacion la saco de otro csv, modifico la informacion y creo un nuevo csv

la informacion la almaceno en variables:

Código PHP:
$id =1243
Despues almaceno esa variable y otras en un array:

Código PHP:
$campos = array(
            
//1 => "\"$id\"", //"""1233"""
            //1 => ".\"$id.\".",//".""12557.""."
            //1 => "$id",//12558
            //1 => ' '.$id.' ',//" 12557 "
            //1 => ' '.$id.'',//" 12566"
            //1 => ''.$id.'', //12566
            //1 => '\"'.$id.'\"', //"\"2131\""
            //1 => '\"'.$id.'"', //"""1233"""
            //1 => "\"".$id, //"""2132",
            //1 => "\"".$id, //"""3008"
            
=> $nombre,
        ); 
A la derecha de cada intento esta la salida en fichero.
Veo que php solo pone comillas dobles " si existe un espacio en el contenido, ¿Como puedo forzar para que el resultado en el fichero sea "1223" sin espacios?

Un saludo!
  #2 (permalink)  
Antiguo 16/09/2015, 10:28
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 11 años, 7 meses
Puntos: 2534
Respuesta: Comillas dobles en fichero csv

¿Cual es el código que genera el csv?
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #3 (permalink)  
Antiguo 16/09/2015, 10:31
 
Fecha de Ingreso: enero-2015
Ubicación: Madrid
Mensajes: 76
Antigüedad: 4 años, 11 meses
Puntos: 5
Respuesta: Comillas dobles en fichero csv

Esto va dentro de un bucle que lee un fichero csv
Código PHP:
$campos = array(
            
//1 => "\"$id\"", //"""1233"""
            //1 => ".\"$id.\".",//".""12557.""."
            //1 => "$id",//12558
            //1 => ' '.$id.' ',//" 12557 "
            //1 => ' '.$id.'',//" 12566"
            //1 => ''.$id.'', //12566
            //1 => '\"'.$id.'\"', //"\"2131\""
            //1 => '\"'.$id.'"', //"""1233"""
            //1 => "\"".$id, //"""2132",
            //1 => "\"".$id, //"""3008"
            
=> $nombre,
        );
        
escribirCSV($campos$fp); 



Código PHP:
function escribirCSV($campos$fp) {
        
        
fputcsv($fp$campos);//$fp es el fichero nuevo. $campos una linea de informacion.
    

  #4 (permalink)  
Antiguo 16/09/2015, 10:49
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 11 años, 7 meses
Puntos: 2534
Respuesta: Comillas dobles en fichero csv

Bien, pues leyendo el manual lo que buscas es prácticamente imposible:
Cita:
necesito que todos los campos vayan rodeados de comillas dobles.
¿Exactamente por qué necesitas que sea así?

Al menos si usas la función nativa fputcsv() no se puede.

En todo caso tendrás que escribir tu propia función para ello.
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #5 (permalink)  
Antiguo 16/09/2015, 11:18
 
Fecha de Ingreso: enero-2015
Ubicación: Madrid
Mensajes: 76
Antigüedad: 4 años, 11 meses
Puntos: 5
Respuesta: Comillas dobles en fichero csv

¿Entonces no existe la posibilidad de concatenar las comillas dobles?

En principio esta informacion que creo lo inserto a una tienda online, que debe estar entre comillas.

En cuanto a crear la funcion te refieres a usar por ejemplo fwrite()?

Un saludo
  #6 (permalink)  
Antiguo 16/09/2015, 11:21
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 11 años, 7 meses
Puntos: 2534
Respuesta: Comillas dobles en fichero csv

Cita:
¿Entonces no existe la posibilidad de concatenar las comillas dobles?
Pues el manual te indica lo que es posible y lo que no, ¿a mi qué me preguntas?

Cita:
En cuanto a crear la funcion te refieres a usar por ejemplo fwrite()?
No, si la función fputcsv() no te deja usar comillas dobles a tu gusto tendrás que hacer tu propia función que escriba el CSV.
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.

Etiquetas: comillas, csv, dobles, fichero, variable
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 11:33.