PHP - Convertir CSV to JSON

 
Vista:
sin imagen de perfil

Convertir CSV to JSON

Publicado por luis eduardo echeverri (14 intervenciones) el 11/02/2015 16:58:45
La idea es hacer una rutina que lea un archivo CSV (archivo delimitado por caracteres) y convertir su contenido en formato JSON y la idea es hacerlo en php alguien me podria colaborar soy novato en esto y el tiene q llamar una ulr un ejemplo de la ulr es es como asi http://rbmam.ejemplo.net/Reportes_descargar/variedaddeanimales/EJEMPLOS_ANIMALES .CSV
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de xve
Val: 3.943
Oro
Ha mantenido su posición en PHP (en relación al último mes)
Gráfica de PHP

Convertir CSV to JSON‏

Publicado por xve (6935 intervenciones) el 11/02/2015 20:04:31
Hola Luis, esa url no existe!!!!

De todas maneras, aquí te adjunto un simple ejemplo:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
<?php
// Ejemplo de un CSV
$miCSV=array(
    "a,b,c",
    "d,e,f",
    "g,h,i"
);
 
$miJson=array();
for($i=0;$i<count($miCSV);$i++)
{
    $valores=explode(",",$miCSV[$i]);
    $miJson[$i]["primero"]=$valores[0];
    $miJson[$i]["segundo"]=$valores[1];
    $miJson[$i]["tercero"]=$valores[2];
}
 
echo json_encode($miJson);
?>

Coméntanos si te sirve, ok?
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar
sin imagen de perfil

Convertir CSV to JSON

Publicado por luis eduardo echeverri (14 intervenciones) el 11/02/2015 20:10:10
claro la verdad es q no puedo publicar la verdadera,
E estado mirando este ejemplo y lo he echo pero me salen errores
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
<?php
/*
 * Converts CSV to JSON
 * Example uses Google Spreadsheet CSV feed
 * csvToArray function I think I found on php.net
 */
 
header('Content-type: application/json');
 
// Set your CSV feed
$feed = 'https://docs.google.com/spreadsheet/pub?hl=en_US&hl=en_US&key=0Akse3y5kCOR8dEh6cWRYWDVlWmN0TEdfRkZ3dkkzdGc&single=true&gid=0&output=csv';
 
// Arrays we'll use later
$keys = array();
$newArray = array();

// Function to convert CSV into associative array
function csvToArray($file, $delimiter) { 
  if (($handle = fopen($file, 'r')) !== FALSE) {
    $i = 0; 
    while (($lineArray = fgetcsv($handle, 4000, $delimiter, '"')) !== FALSE) {
      for ($j = 0; $j < count($lineArray); $j++) { 
        $arr[$i][$j] = $lineArray[$j]; 
      } 
      $i++; 
    } 
    fclose($handle); 
  } 
  return $arr; 
} 

// Do it
$data = csvToArray($feed, ',');

// Set number of elements (minus 1 because we shift off the first row)
$count = count($data) - 1;
  
//Use first row for names  
$labels = array_shift($data);  

foreach ($labels as $label) {
  $keys[] = $label;
}

// Add Ids, just in case we want them later
$keys[] = 'id';

for ($i = 0; $i < $count; $i++) {
  $data[$i][] = $i;
}
  
// Bring it all together
for ($j = 0; $j < $count; $j++) {
  $d = array_combine($keys, $data[$j]);
  $newArray[$j] = $d;
}

// Print it out as JSON
echo json_encode($newArray);

?>
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de xve
Val: 3.943
Oro
Ha mantenido su posición en PHP (en relación al último mes)
Gráfica de PHP

Convertir CSV to JSON

Publicado por xve (6935 intervenciones) el 11/02/2015 20:38:49
Hola Luis, que errores te aparecen?
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil

Convertir CSV to JSON

Publicado por luis eduardo echeverri (14 intervenciones) el 11/02/2015 21:16:58
mira esta es la url
http://rbmam.janium.net/Reportes_descargar/Bibliograficos/LISTAS_NUEVOS_AMBIENTAL.CSV
errores de sintaxis
errores en la linea esta linea
if (($handle = fopen($file, 'r')) !== FALSE) {
$i = 0;
de hay no paso claro esta estoy trabajando en es esta plataforma online Test your PHP code online, right here.
sera por eso
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de xve
Val: 3.943
Oro
Ha mantenido su posición en PHP (en relación al último mes)
Gráfica de PHP

Convertir CSV to JSON

Publicado por xve (6935 intervenciones) el 12/02/2015 07:25:20
No se ver donde esta el error de sintaxis...

Porque no lo pruebas algo así:
1
2
3
4
5
$handle = fopen($file, 'r');
if(!$handle)
{
    no se ha podido abrir
}
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar