Bibliotecas PHP: PhpSpreadsheet
otima biblioteca quando precisei importar e extrair dados de planilhas do Excel e usar no PHP.
vou resumir algumas partes mas quem tiver dúvidas e eu puder ajudar me chama no Linkedin.
Crie uma nova pasta para o seu projeto com um index.php.
Após isso navegue até a pasta do seu projeto no prompt de comando (cmd) com:
no meu caso : *
cd public_html/PhpExcel/
Resumindo do composer em diante ...
Acesse o site da biblioteca PhpSpreadSheet e faça a instalação através do seu prompt de comando (cmd) com:
composer require phpoffice/phpspreadsheet
A estrutura do nosso projeto se encontra da seguinte maneira:
PhpExcel
- vendor
- composer.json
- composer.lock
- index.php
- processa.php
Após a instalação ser concluída abra o seu index.php e chame pelo autoload.php que está dentro da pasta vendor.
* require('vendor/autoload.php');
Configurando a biblioteca - Dentro de index.php dê um “use” para dizer que vai usar as classes:
*
//carrega inicialmente a biblioteca require '../vendor/autoload.php'; //recebe o arquivo via $_FILE $dados = $_FILES['arquivo']; // caminho do arquivo para a biblioteca visualizar $route = $dados['tmp_name']; use PhpOffice\PhpSpreadsheet\Spreadsheet; use PhpOffice\PhpSpreadsheet\Writer\Xlsx; // aqui carrega o arquivo pela biblioteca $spreadsheet = \PhpOffice\PhpSpreadsheet\IOFactory::load($route); // carrega a planilha ativa - veja na documentação getActiveSheet e getSheets $worksheet = $spreadsheet->getActiveSheet(); // aqui vai contar quantas linhas com dados $highestRow = $worksheet->getHighestRow(); // aqui ate qual coluna tem dados em letras (A , B , C , D , E , F) $highestColumn = $worksheet->getHighestColumn(); // Exibindo dados aqui $i = 1; echo $highestRow." - ".$highestColumn." - "; echo $worksheet->getCell('A'.$i); echo "</br>"; echo $worksheet->getCell('B1'); echo "</br>"; echo $worksheet->getCell('C1'); echo "</br>"; echo $worksheet->getCell('D1'); echo "</br>"; echo $worksheet->getCell('E1'); echo "</br>"; echo $worksheet->getCell('F1'); echo "</br>"; echo $worksheet->getCell('G1'); echo "</br>"; echo $worksheet->getCell('A2'); echo "</br></br>"; var_dump($dados); echo "1</br></br>";
tem um exemplo no meu github aqui.
se alguém quiser melhorar lá fique a vontade.
Nenhum comentário:
Postar um comentário