PHPackages                             lukaspijak/vcard-parser - 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. [Parsing &amp; Serialization](/categories/parsing)
4. /
5. lukaspijak/vcard-parser

ActiveLibrary[Parsing &amp; Serialization](/categories/parsing)

lukaspijak/vcard-parser
=======================

1.0.2(1y ago)0315MITPHPPHP &gt;=5.3.0

Since Nov 20Pushed 1y ago1 watchersCompare

[ Source](https://github.com/lukaspijak/vcard-parser)[ Packagist](https://packagist.org/packages/lukaspijak/vcard-parser)[ RSS](/packages/lukaspijak-vcard-parser/feed)WikiDiscussions master Synced 3d ago

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

Nuovo/Nouveau vCard-parser is a simple vCard file parser with the focus on ease of use.

The parser was written mostly because I couldn't find one that I was satisfied with - all those that I tried either failed with real world data or were too unwieldy or inconvenient, hence this parser.

The parser can read both single and multiple vCards from a single file and with the help of PHP's magic methods and interfaces it can be written concisely. For example:

```
include('vCard.php');
$vCard = new vCard('Example3.0.vcf');

```

Get the number of vCards in the file

```
echo count($vCard);

```

In the single-vCard mode every element is accessible directly.

```
if (count($vCard) == 1)
{
    print_r($vCard -> n);
    print_r($vCard -> tel);
}

```

In the multiple-vCard mode the object can be used as an array to retrieve separate vCard objects for each vCard in the file.

```
else
{
    foreach ($vCard as $vCardPart)
    {
        print_r($vCardPart -> n);
        print_r($vCardPart -> tel);
    }
}

```

Every vCard element is accessible as an object member by the vCard element name. Every element is an array with the data parsed out of the file. It is possible to specify an option to the vCard constructor that will let you access every element as a single value in cases where there is just one value, e.g.:

```
$vCard = new vCard('Example3.0.vcf', false, array('Collapse' => true));

```

More on usage in [the wiki](https://github.com/nuovo/vCard-parser/wiki)

See also:

-  - A MIME Content-Type for Directory Information
-  - vCard MIME directory profile
-  - vCard Extensions for Instant Messaging (IM)

TODOs planned:

- Add support for non-standard ("X-...") elements;

###  Health Score

33

—

LowBetter than 75% of packages

Maintenance39

Infrequent updates — may be unmaintained

Popularity14

Limited adoption so far

Community9

Small or concentrated contributor base

Maturity58

Maturing project, gaining track record

 Bus Factor1

Top contributor holds 83% 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 ~1106 days

Total

3

Last Release

521d ago

### Community

Maintainers

![](https://www.gravatar.com/avatar/e69bbc1e1adb7622a26014ca06af6df0dae7ef2cdc4915e16366497802500d65?d=identicon)[lukaspijak](/maintainers/lukaspijak)

---

Top Contributors

[![pilsetnieks](https://avatars.githubusercontent.com/u/776876?v=4)](https://github.com/pilsetnieks "pilsetnieks (39 commits)")[![lukaspijak](https://avatars.githubusercontent.com/u/2571714?v=4)](https://github.com/lukaspijak "lukaspijak (8 commits)")

### Embed Badge

![Health badge](/badges/lukaspijak-vcard-parser/health.svg)

```
[![Health](https://phpackages.com/badges/lukaspijak-vcard-parser/health.svg)](https://phpackages.com/packages/lukaspijak-vcard-parser)
```

###  Alternatives

[mtdowling/jmespath.php

Declaratively specify how to extract elements from a JSON document

2.0k472.8M135](/packages/mtdowling-jmespathphp)[opis/closure

A library that can be used to serialize closures (anonymous functions) and arbitrary data.

2.6k230.0M284](/packages/opis-closure)[masterminds/html5

An HTML5 parser and serializer.

1.8k242.8M229](/packages/masterminds-html5)[sabberworm/php-css-parser

Parser for CSS Files written in PHP

1.8k191.2M65](/packages/sabberworm-php-css-parser)[michelf/php-markdown

PHP Markdown

3.5k52.4M345](/packages/michelf-php-markdown)[jms/metadata

Class/method/property metadata management in PHP

1.8k152.8M88](/packages/jms-metadata)

PHPackages © 2026

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