PHPackages                             diouro/csv-lib - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [PDF &amp; Document Generation](/categories/documents)
4. /
5. diouro/csv-lib

ActiveLibrary[PDF &amp; Document Generation](/categories/documents)

diouro/csv-lib
==============

Uma biblioteca CSV simples e orientada a objetos, criada para a leitura de arquivos CSV e para uso em artigo do site http://sooho.com.br . Por momento essa biblioteca faz apenas a leitura de dados. Para uma versão futura, possivelmente irei implementar métodos novos, como o retorno de dados via ResultSet, Filtro de dados, Filtro por Colunas e a possibilidade de Escrita.

1.0.0(4y ago)05[1 PRs](https://github.com/diouro/CSVLib/pulls)(Apache-2.0 and MIT)PHPPHP &gt;=5.5

Since Oct 13Pushed 4y agoCompare

[ Source](https://github.com/diouro/CSVLib)[ Packagist](https://packagist.org/packages/diouro/csv-lib)[ Docs](http://sooho.com.br)[ RSS](/packages/diouro-csv-lib/feed)WikiDiscussions master Synced 6d ago

READMEChangelog (1)DependenciesVersions (4)Used By (0)

CSVLib Exemplo
==============

[](#csvlib-exemplo)

Uma biblioteca CSV simples e orientada a objetos, criada para a leitura de arquivos CSV e para uso em artigo do site  . Por momento essa biblioteca faz apenas a leitura de dados. Para uma versão futura, possivelmente irei implementar métodos novos, como o retorno de dados via ResultSet, Filtro de dados, Filtro por Colunas e a possibilidade de Escrita.

Como usar
---------

[](#como-usar)

Fique a vontade para baixar, usa-la como quiser, alterar ou sugerir melhorias. Use o arquivo `exemplo_leitura.php` como referência.

### Instanciando a Classe

[](#instanciando-a-classe)

O primeiro passo para usar, é intanciar a classe CSV. Toda a biblioca usa Namespace, para evitar conflitos com outros sistemas - visto que Csv e Arquivo, são nomes bem comuns. Comece por inserir a biblioteca e instanciar a classe usando o seguinte código:

```
# Incluindo a biblioteca CSV
require_once __DIR__ .'/src/CsvReader.php';

# Instanciando o Objeto de Manipulação de dados
$csv = new CsvReader( 'movimentos_financeiros.csv',',','"' );
```

A classe `Csv` recebe 3 parametros no total. Sendo:

1. Caminho para o arquivo CSV
2. Delimitador de Colunas do arquivo
3. Identificador de Strings caso não passe os 2 últimos parametros, a biblioteca irá considerar como padrão ";" como delimitador de colunas e '"' como idntificador de Strings.

### Leitura de dados

[](#leitura-de-dados)

A leitura de dados é realizada com o método `read()` da classe `CsvReader`. Esse método, também pode receber os 3 parametros citado acima.

```
# obtendo os dados e realizando um Loop
# com foreach
foreach( $csv->read() as $linha )
    var_dump( $linha );
```

### Outras possibilidades

[](#outras-possibilidades)

Existem algumas funções extras que podem ser de alguma utilidade. Seguem!

```
/**
 * Caminho e Nome do Arquivo
 * saida: string; algo como 'teste_importe__.csv';
 */
echo $csv->filepath() ;

/**
 * Número total de registros
 * dentro do arquivo
 * saida: valor int;
 */
echo $csv->numRows() ;

/**
 * Obtendo o tamanho do arquivo
 * formatado em B,KB,MB,GB.
 * saida: Array('size','unit');
 */
$size = $csv->size();
echo $size['size'] . $size['unit'] ;

/**
 * Obtendo a data em que o arquivo foi
 * Modificado.
 * Nota: Precisa configurar em seu sistema
 * o timezone com date_default_timezone_set();
 * saida: string; algo como 10/04/2017 19:42:02
 */
echo $csv->dataModificacao() ;

/**
 * Existe a data em que o arquivo foi acessado
 * por ultimo.
 * saida: string; algo como 10/04/2017 19:42:02
 */
echo $csv->dataAcesso() ;

/**
 * Você também pode transformar o resultado final
 * em um objeto, se assim desejar e achar mais
 * confortavel o uso de oop.
 * A conversão funciona pelo proprio PHP via typecast.
 */
foreach( $csv->ler() as $linha ){
    $linha = (object) $linha;
    var_dump( $linha );
}
```

### Concluindo

[](#concluindo)

Espero que essa simples classe possa ser de alguma ajuda a quem a utilizar. Caso, necessite mais detalhes, sinta-se a vontade para acessar o site  pois contém um material mais detalhado sobre como a biblioteca foi elaborada.

Obrigado. Wanderlei Santana

###  Health Score

22

—

LowBetter than 22% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity4

Limited adoption so far

Community8

Small or concentrated contributor base

Maturity47

Maturing project, gaining track record

 Bus Factor1

Top contributor holds 80% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

###  Release Activity

Cadence

Every ~0 days

Total

2

Last Release

1676d ago

Major Versions

0.0.1 → 1.0.02021-10-13

### Community

Maintainers

![](https://www.gravatar.com/avatar/66e38f23486dc47b94e97232bba018a1ecd9d321fe812faa64695abfaccf2eb2?d=identicon)[diouro](/maintainers/diouro)

---

Top Contributors

[![osians](https://avatars.githubusercontent.com/u/5152804?v=4)](https://github.com/osians "osians (8 commits)")[![pgoncalves-cat](https://avatars.githubusercontent.com/u/138074819?v=4)](https://github.com/pgoncalves-cat "pgoncalves-cat (2 commits)")

---

Tags

csv

### Embed Badge

![Health badge](/badges/diouro-csv-lib/health.svg)

```
[![Health](https://phpackages.com/badges/diouro-csv-lib/health.svg)](https://phpackages.com/packages/diouro-csv-lib)
```

###  Alternatives

[maatwebsite/excel

Supercharged Excel exports and imports in Laravel

12.7k144.3M712](/packages/maatwebsite-excel)[league/csv

CSV data manipulation made easy in PHP

3.5k166.1M646](/packages/league-csv)[rap2hpoutre/fast-excel

Fast Excel import/export for Laravel

2.3k24.9M47](/packages/rap2hpoutre-fast-excel)[openspout/openspout

PHP Library to read and write spreadsheet files (CSV, XLSX and ODS), in a fast and scalable way

1.1k57.6M131](/packages/openspout-openspout)[goodby/csv

CSV import/export library

9555.6M23](/packages/goodby-csv)[sonata-project/exporter

Lightweight Exporter library

44920.9M35](/packages/sonata-project-exporter)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
