PHP Excel Reader – Leer ficheros XLS con PHP

¿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”;
}

Compartelo en tus redes socialesShare on FacebookShare on Google+Tweet about this on TwitterEmail this to someoneShare on TumblrShare on LinkedIn

15 Comments

  1. 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

  2. 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í.

  3. 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

  4. 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

  5. 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 !!

  6. 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

  7. 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

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos necesarios están marcados *