Tecnología

Inicio

Cómo convertir XLS a CSV Con PHP

Cómo convertir XLS a CSV Con PHP


PHP y bases de datos van de la mano. Como tales, los archivos PHP y Excel han encontrado históricamente problemas de compatibilidad. La gente a menudo mantienen bases de datos editados manualmente en hojas de cálculo de Excel y, a continuación, en algún quieren crear un script PHP o una página Web para interactuar con los datos en la hoja de cálculo. Desafortunadamente, Excel es un formato propietario propiedad de Microsoft. Por lo que el método recomendado frecuentemente de hacer coincidir los sistemas de código abierto a los archivos de Excel es convertir los datos de hoja de cálculo del Excel a un valor separado por comas, o CSV, archivo. Históricamente, los scripts PHP tuvieron que correr en Windows y utilizar COM para hacer esto. Pero ahora hay una solución multiplataforma conveniente.

Instrucciones

Obtener PHP Excel lector

1 Ir a la página web Descarga y Documentación PHP Excel Reader (ver Recursos) y descargar el paquete PHP Excel Reader.

2 Descomprimir el paquete y desechar los archivos de ejemplo. No es necesario para usarlos.

3 Instalar el archivo llamado "excel_reader2.php" en su servidor PHP puede encontrarlo. Por ejemplo, si usted está usando PHP en un servidor web alojado de forma remota, subir excel_reader2.php a una carpeta en la ruta de inclusión en el servidor a través de FTP o su programa de transferencia de archivos favorito.

Su procesar archivos XLS

4 Hacer archivo accesible a su script PHP su Excel. Haga una copia del archivo de Excel con el nombre "xls_test.xls" para este tutorial. A continuación, pasar "xls_test.xls" en la carpeta donde se encuentra el script PHP. Si está programando en un servidor remoto, utilice FTP o su programa favorito de transferencia de archivos para transferir el archivo de Excel en el servidor. Si está programando en su propio ordenador, arrastre "xls_test.xls" en la carpeta en su script PHP es.

5 PHP crear una instancia de Excel lector en su script PHP usando el archivo de Excel. Crear una variable que contiene el archivo de Excel como un objeto que puede ser manipulada, buscado, etc. Utilice "xls $ = new Spreadsheet_Excel_Reader ( 'xls_test.xls', false);" por ejemplo el código. El uso de "falsa" como nuestro segundo parámetro será ahorrar en el uso de la memoria ya que los archivos CSV son simples y no necesitan información, como los colores de borde de celda.

6 Crear una variable para almacenar los datos CSV. Use "$ csv = '';" por ejemplo el código.

7 Para saber el número de columnas y filas en el archivo de Excel. Para las columnas, utilice "cols = $ $ xsl-> colcount ();" por ejemplo el código. Para las filas, utilice "$ = $ filas XLS-> recuento de filas ();" por ejemplo el código.

8 Crear sus datos CSV. Utilice un anidados "bucle" para hacerlo:

de ($ r = 1; $ r <= $ $ r filas; ++) {// pasar por cada fila de la hoja de cálculo

de ($ c = 1; $ c <= $ cols; $ c ++) {// ir a través de cada columna

$csv .= $xls->raw($r, $c); //get the raw data in the current cell.

if ($ c = $ cols) {

$ Csv = "\ n".; // Crear una nueva línea después de que hayamos terminado esta fila

} Else {

. $ Csv = ""; // Poner una coma entre cada elemento

}

}

}

9 Guardar el contenido de $ csv a un archivo CSV utilizando las funciones de archivo de escritura de PHP. Asegúrese de que el archivo termina en ".csv" para mayor claridad.

Consejos y advertencias

  • CSV es un formato de datos mucho más sencillo de lo que un archivo de Excel. En este tutorial se va a trabajar para archivos XLS con la fila cero o una cabecera seguida de filas de datos. Cualquier otro formato requerirá una programación más complicado.