¿Cómo leer un archivo de Excel (XLS) en un PHP? La respuesta (o URL) es simple:
http://sourceforge.net/projects/phpexcelreader
Sin embargo, al parecer existe un error en uno de los require_once en los archivos PHP del paquete el cual es un poco tedioso de encontrar.
En el archivo Excel/reader.php (línea 31) encontramos:
require_once ‘Spreadsheet/Excel/Reader/OLERead.php’;
hay que cambiarlo por:
require_once ‘oleread.inc’;
Luego en nuestro archivo PHP llamamos al reader.php y voila!
require_once ‘Excel/reader.php’;
// ExcelFile($filename, $encoding);
$data = new Spreadsheet_Excel_Reader();// Set output Encoding.
$data->setOutputEncoding(‘CP1251′);$data->read(‘test.xls’);
error_reporting(E_ALL ^ E_NOTICE);
for ($i = 1; $i <= $data->sheets[0]['numRows']; $i++) {
for ($j = 1; $j <= $data->sheets[0]['numCols']; $j++) {
echo “\”".$data->sheets[0]['cells'][$i][$j].”\”,”;
}
echo “\n”;
}
Julio 3, 2008 a las 11:22 pm |
También de interés para leer ficheros de OpenOffice: http://blogantastico.blogspot.com/2008/02/ods-php.html (gracias a jcarlosn de meneame por el enlace)
Septiembre 11, 2008 a las 4:55 pm |
Cuando extraigo con la funcion $data->sheets[$sheetMaterialList]['cells'][$i][$colCipnumberID], si el valor de la celda es 702084 tejala bien, si es 702084.2 te jala bien, si es 702084.25, te jala bien pero si es 702084.235 te muestra 702084.484 osea te modifia los caracteres despues del punto eso sucede en todas los string que tienen tres caracteres despues dl punto
Septiembre 11, 2008 a las 5:01 pm |
Hola, Luis,
Como es una librería escrita en PHP mismo, deberías poder encontrar como arreglarla. Supongo que es debido a alguna expresión regular por ahí…
Nosotros no desarrollamos esta librería, por eso lo mejor, seguro, sera de mandar un e-mail a los autores de la librería misma, pidiendo si es un bug y si se puede arreglar. Supongo que deben tener razones por haber puesto un limite así.
Abril 23, 2009 a las 10:05 am |
Excelente acotación! Funciona correctamente! Mil gracias!!
Abril 24, 2009 a las 1:36 am |
Buenos dias soy bastante novato en el tema y estoy intentando probar el codigo y no funciona del todo bien.
Necesitaba que lo presentase en el formato de tabla y este lo escribe todo seguido.
Alguien sabe como se puede solucionar esto.
Gracias por todo
Agosto 13, 2009 a las 9:08 am |
Me sirvió a la perfección su consejo
Septiembre 17, 2009 a las 11:17 am |
Hola
Muy buena la libreria pero tengo un problema, quisiera saber como guardar en variables cada uno de los valores de cada fila y columna, que pasa en mo caso el numero de columnas es fijo pero el numero de filas no, por lo tanto no se como recorrer el arreglo para guardar cada valor, ayuda por favor
gracias
Noviembre 4, 2009 a las 3:02 pm |
Hola tengo un archivo de excel necesito leerlo encribir en el guardalo y cuando lo vuelva a abir me mantega cambios gracias
Noviembre 4, 2009 a las 4:46 pm |
También existe una librería PHPExcelWriter para esto. Suerte.
Noviembre 19, 2009 a las 12:46 pm |
Hola… en hora buena !!
estaba como loco buscando como leer los arshivos de excel =|… i me encontré esta librería en varios sitios… pero no me salia nada i no sabia q se debia a esto…
En el archivo Excel/reader.php (línea 31) encontramos:
require_once ‘Spreadsheet/Excel/Reader/OLERead.php’;
hay que cambiarlo por:
require_once ‘oleread.inc’;
gracias… mushias gracias =D !!!
saludos !!
Noviembre 19, 2009 a las 2:11 pm |
Es bueno cuando alguien comparte su conocimiento!
Diciembre 11, 2009 a las 10:04 pm |
Buenas he leido ya sobre esta libreria y quisiera saber si alguien me ayuda con un problema. cuando trato de leer desde php una celda que es una formula me devuelve el dato en blanco o sea cuando una celda es, ejemplo: =A4*3 , me devuelve el dato vacio sin embargo si es texto me lo devuelve bien. Si alguien supiera la respuesta favor de publicarla.
Gracias de antemano