Red de conocimiento informático - Material del sitio web - Introducción al uso de excel basado en php

Introducción al uso de excel basado en php

En el trabajo, tenemos que lidiar con problemas de traducción multilingüe y todas las traducciones están escritas en tablas de Excel. Por conveniencia, mantendré las columnas en chino e inglés.

De esta manera, los datos deben extraerse de Excel, pero guardarse en la matriz de Excel, y los datos correspondientes deben colocarse en la base de datos utilizando la matriz circular.

Así que el primer paso del trabajo es sacar los datos de Excel. Aquí utilizo un php de código abierto para procesar la clase de Excel: phpexcel.

Detalles del proyecto

La versión que estoy usando actualmente es phpexcel1.7.3.

Después de la descompresión, hay un archivo PHPExcel y PHPExcel.php en su interior.

Utilizamos principalmente archivos PHP. Vea la estructura del directorio de archivos a continuación.

Se dice que esta versión es compatible con excel2007, pero el xlsx que edité en 2007 no puede ser compatible con esta biblioteca. Entonces lo hice en 2003. Me siento muy solidario.

A continuación se explica cómo usarlo:

Copia el código

El código es el siguiente:

require_once('./ phpexcel 1. 7. 3/phpexcel .PHP');

$php_excel_obj

=

Nuevo

PHPExcel();

$php_reader

=

newPHPExcel _ Reader _ excel 2007()

if (!$PHP_reader->puede leer( $ Nombre de archivo)){

$php_reader=

Nuevo

PHPExcel _ Reader _ excel 5()

Si (! $PHP_reader->puede leer($nombre de archivo)){

Número de eco

¡Excel! ;

}

}

$php_excel_obj

=

$ PHP _ lector-& gt; ($file_name);

$current_sheet

= $PHP_excel_obj->getsheet(0);

La función principal anterior es inicializar el archivo Excel relacionado. clases y cargar la primera tabla de Excel.

Copiar código

El código es el siguiente:

$all_column

= $ current_sheet-& gt;getHighestColumn() ;

$all_column

= p>

$all_row

= $ hoja_actual-& gt;gethigheestrow();

Obtiene el valor máximo de columna de la tabla (letras como 'g') y el número máximo de filas (valor numérico).

Lo siguiente utilizará un bucle para leer datos en Excel:

Copiar el código

El código es el siguiente:

$ all_arr

=

array();

$c_arr

=

array();

//Tabla de comparación de caracteres

For (r_i

=

1;

$ r _ i & lt = $ todo _ fila

$r_i++){

$c_arr=

array();

Para ($c_I =)

p>

a';

$ c _ i & lt=

b';

$c_i++){

$adr=

$c_i

.

$ r_I;

$value=

$ current_sheet->getCell($ ADR)->getValue(); >if($c_i==

a

& amp& amp

vacío(valor)

)?

Romper;

if(is_object($valor))?

$value=

$ valor-& gt;_ _ toString();

$c_arr[$c_i]=

$ valor

}

$ c _ arr & amp& amp

$all_arr[]

=?

$ c _ arr

}

La siguiente es una breve introducción a la operación de escritura de phpexcel. Esta operación se utiliza a menudo para importar datos de la base de datos a Excel para una fácil visualización y una apariencia más hermosa.

Copiar código

El código es el siguiente:

require_once('./phpexcel 1 . 7 . 3/phpexcel . PHP'); >

$excel_obj

=

Nuevo

PHPExcel();

$objWriter

=

newPHPExcel _ Writer _ excel 5($ excel _ obj

$ excel _ obj-& gt; setActiveSheetIndex(0); hoja_obj = $ excel_obj->getActiveSheet();

$act_hoja_obj->setTitle('hoja');

$act_hoja_ obj->setCellValue('A1 ',

Contenido de cadena');

$ act _ hoja _ obj->setCellValue('A2 ',

26);

$Nombre de archivo

=

"salida . xls";

$ obj escritor-& gt; ($ file _ name);

El código es muy simple

Primero inicialice la clase de escritura de Excel relevante, luego escriba los datos y finalmente guárdelos como un archivo xls.

El efecto de salida es como se muestra en la figura.