Foros del Web » Programando para Internet » PHP »

problemas al crear csv con espacion vaciosde excel

Estas en el tema de problemas al crear csv con espacion vaciosde excel en el foro de PHP en Foros del Web. BUenas tengo un script php que me genera csv funciona bien cuando el excel es de esta forma 1 3 2 4 entonces me genera ...
  #1 (permalink)  
Antiguo 14/12/2010, 09:10
 
Fecha de Ingreso: julio-2010
Mensajes: 34
Antigüedad: 13 años, 8 meses
Puntos: 0
problemas al crear csv con espacion vaciosde excel

BUenas tengo un script php que me genera csv funciona bien cuando el excel es de esta forma
1 3
2 4
entonces me genera el csv
1;3
2;4
**************************
pero falla cuando el excel vien asi
1 3 5 7
2 (celda vacia) 6 8

deveria
arrojarme

1;3;5;7
2; ;6;8

cuandoes unaespacio vacio noloconsidera ,dandome unresultado asi

1;3;5;7
2;6;8


este es mi script cualquier ayuda muchas gracias
<?php

//*crear el csv
$csv_end = "\n";
$csv_sep = ";";
$csv_file = "espacio2.csv";
$csv="";
//*
require_once 'CompoundDocument.inc.php';
require_once 'BiffWorkbook.inc.php';

$fileName = 'espacio.xls';
if (!is_readable ($fileName)) die ('Cannot read ' . $fileName);

$doc = new CompoundDocument ('utf-8');
$doc->parse (file_get_contents ($fileName));
$wb = new BiffWorkbook ($doc);
$wb->parse ();
foreach ($wb->sheets as $sheetName => $sheet)
{
'<h1>' . $sheetName . '</h1>';
'<table cellspacing = "0">';
for ($row = 0; $row < $sheet->rows (); $row ++)
{
'<tr>';
for ($col = 0; $col < $sheet->cols (); $col ++)
{
if (!isset ($sheet->cells [$row][$col])) continue;
$cell = $sheet->cells [$row][$col];

'<td style = "' . $cell->style->css () . '" rowspan = "' . $cell->rowspan . '" colspan = "' . $cell->colspan . '">';
is_null ($cell->value) ? '&nbsp;' : $cell->value;
$csv.=$cell->value.$csv_sep;
'</td>';
}
/aqui se generan los datos

$csv.=$csv_end;
$csv = substr($csv, 0, -2).$csv_end;

'</tr>';
}
'</table>';
}
//creando el csv
if (!$handle = fopen($csv_file, "w")) {
echo "Cannot open file";
exit;
}
if (fwrite($handle, utf8_decode($csv)) === FALSE) {
echo "Cannot write to file";
exit;
}
fclose($handle);
?>

Etiquetas: csv, excel
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 10:24.