¿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”;
}
Comments
También de interés para leer…
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)
Cuando extraigo con la…
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
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í.
Excelente acotación!…
Excelente acotación! Funciona correctamente! Mil gracias!!
Buenos dias soy bastante…
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
Me sirvió a la perfección su…
Me sirvió a la perfección su consejo
HolaMuy buena la libreria…
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
Hola tengo un archivo de…
Hola tengo un archivo de excel necesito leerlo encribir en el guardalo y cuando lo vuelva a abir me mantega cambios gracias
También existe una librería…
También existe una librería PHPExcelWriter para esto. Suerte.
Hola… en hora buena !!…
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 !!
Es bueno cuando alguien…
Es bueno cuando alguien comparte su conocimiento!
Buenas he leido ya sobre…
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
beunisima me sirve ahora…
beunisima me sirve ahora subo esta info a la base y la planilla pasa a segundo plano
excelente muy agradecido
lo ejecuto y me sale esto!…
lo ejecuto y me sale esto!
“Number Formats”,”123456789.12345″,””,””,””,””,””,””,””,””, “Format”,”Positive”,”Negative Format 1″,”Negative Format 2″,”Negative Format 3″,”Negative Format 4″,””,””,””,””, “1234”,”123456789″,”-123456789″,”-123456789.12345″,”-123456789.12345″,”-123456789.12345″,””,”Col I is hidden –>”,””,””, “1234.0”,”123456789.12345″,”-123456789.12345″,”-123456789.12345″,”-123456789.12345″,”-123456789.12345″,””,””,””,”This is col J”, “1234.00”,”123456789.12″,”-123456789.12″,”-123456789.12345″,”-123456789.12345″,”-123456789.12345″,””,””,””,””, “1,234”,”123456789″,”-123456789″,”-123456789.12345″,”-123456789″,”-123456789″,””,””,””,””, “1,234.0”,”123456789.12345″,”-123456789.12345″,”-123456789.12345″,”-123456789.12345″,”-123456789.12345″,””,””,””,””, “1,234.00”,”123456789.12″,”-123456789.12″,”-123456789.12345″,”-123456789.12″,”-123456789.12″,””,””,””,””, “$1,234.00″,”123456789.12345″,”-123456789.12345″,”-123456789.12345″,”-123456789.12345″,”-123456789.12345″,””,””,””,””, “Dates”,”Times”,””,””,”Percentages”,”Fonts”,””,””,””,””, “01/01/2009″,”12/11/2008 10:55″,”39814.072905093″,”23:00:00″,”0%”,”Bold”,””,””,””,””, “39481”,”39763.455421528″,”39814.072916667″,”23:30:00″,”0.01%”,”Italic”,””,””,””,””, “39813”,”10:55:48″,”39814.072928241″,””,””,”Underline”,””,””,””,””, “39813”,”02/12/2009″,””,””,””,”Bold – Italic”,””,””,””,””, “39813”,””,””,””,””,”Bold – Underline”,””,””,””,””, “39813”,””,””,”mondongo”,””,”italic – Underline”,””,””,””,””, “Colors”,””,””,””,””,””,””,””,””,””, “Red”,”Green”,”Blue”,”Yellow”,”Gray”,”Orange”,”Purple”,”Cyan”,””,””, “”,””,””,””,””,””,””,””,””,””, “Format Colors Override Cell Colors:”,””,”-444″,”444″,””,””,””,””,””,””, “”,””,””,””,””,””,””,””,””,””, “Col/Row Spans”,””,””,”Alignment”,”Font Size”,”Font Family”,””,””,””,””, “colspan=3″,””,””,”left”,”10 point”,”Times New Roman”,””,””,””,””, “rowspan=3″,”colspan=2″,””,”center”,”12 point”,”Arial”,””,””,””,””, “”,”colspan=2 rowspan=2″,””,”right”,”16 point”,”Verdana”,””,””,””,””, “”,””,””,””,”20 point”,”Comic Sans MS”,””,””,””,””, “”,””,””,””,””,””,””,””,””,””, “Formulas”,””,””,”estan es locos”,””,””,””,””,””,””, “Boolean:”,””,””,””,””,””,””,””,””,””, “String:”,””,””,””,””,””,””,””,””,””, “”,””,””,””,””,””,””,””,””,””, “Borders”,””,””,””,””,””,””,””,””,””, “Thick Solid:”,”left”,”top”,”right”,”bottom”,”none”,”all”,””,””,””, “”,””,””,””,””,””,””,””,””,””, “Double:”,”left”,”top”,”right”,”bottom”,”none”,”all”,””,””,””, “”,””,””,””,””,””,””,””,””,””, “Dashed:”,”left”,”top”,”right”,”bottom”,”none”,”all”,””,””,””, “”,””,””,””,””,””,””,””,””,””, “Dotted:”,”left”,”top”,”right”,”bottom”,”none”,”all”,””,””,””, “”,””,””,””,””,””,””,””,””,””, “Border Colors:”,”Red”,”Green”,”Yellow”,”Blue”,””,”all”,””,””,””, “This row is 100 px tall”,””,””,”http://www.google.com”,”This also links to Google”,””,””,””,””,””, “”,””,””,””,””,””,””,””,””,””, “The row above this is hidden”,””,”Link to CNN”,”And this”,”This one too”,””,””,””,””,””,
porque???
UNa ayuda por favor, que alguien explique porque se ejecuta asi
Esto es el formato deseado …
Esto es el formato deseado (formato CSV). Si quieres otro formato, tienes que modificar un poco el código para que te lo formatee.