PHPackages                             semiorbit/serial - 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. [Utility &amp; Helpers](/categories/utility)
4. /
5. semiorbit/serial

ActiveLibrary[Utility &amp; Helpers](/categories/utility)

semiorbit/serial
================

Generate a Serial Number of alphanumeric 16 random chars in PHP.

1.0.3(2y ago)0264MITPHPPHP &gt;=7.4.0

Since Sep 25Pushed 2y ago1 watchersCompare

[ Source](https://github.com/semiorbit/serial)[ Packagist](https://packagist.org/packages/semiorbit/serial)[ RSS](/packages/semiorbit-serial/feed)WikiDiscussions main Synced 1mo ago

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

Serial Number Generator in PHP
==============================

[](#serial-number-generator-in-php)

**Semiorbit Serial Number Generator** is a PHP library to create a Serial Number of **alphanumeric 16 random chars**. It is mostly unique, depending on microtime() and mt\_rand() functions converted to BASE 36. (So, it should be 100% unique for one server host as long as server time is accurate and not backward).

Install
-------

[](#install)

```
composer require semiorbit/serial

```

Documentation
-------------

[](#documentation)

### SerialNumber::Generate

[](#serialnumbergenerate)

Generates an alphanumeric 16 chars Serial Number. Chars could be grouped in 4 seperated segments.

```
SerialNumber::Generate(string $separator = '') : string
```

#### Params

[](#params)

- string **$separator** dash by default
- returns string

```
use SemiorbitSerial\Serial;

echo SerialNumber::Generate();

echo SerialNumber::Generate('-');

// OUTPUT:

// CVPKRIJ48NZS4JRO
// CVPK-RIJ4-8NZS-4JRO
```

### SerialNumber::Format

[](#serialnumberformat)

Returns a formatted Serial Number string width dashes (or selected separator)

```
SerialNumber::Format(string $serial, string $separator = '-'): string
```

#### Params

[](#params-1)

- string **$serial** A Serial Number string to parse
- string **$separator** Dash by default
- returns string **{xxxx-xxxx-xxxx-xxxx}**

```
use SemiorbitSerial\Serial;

$serial = '4F93820EFEF290A26489E0AE803A37C0';

echo SerialNumber::Format($serial);

// OUTPUT:
// {4F93820E-FEF2-90A2-6489-E0AE803A37C0}
```

License
-------

[](#license)

The Semiorbit Serial Number is an open-source PHP library licensed under the [MIT license](http://opensource.org/licenses/MIT).

###  Health Score

23

—

LowBetter than 27% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity14

Limited adoption so far

Community7

Small or concentrated contributor base

Maturity43

Maturing project, gaining track record

 Bus Factor1

Top contributor holds 100% 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

Unknown

Total

1

Last Release

965d ago

### Community

Maintainers

![](https://www.gravatar.com/avatar/48a579e12fae115db84a3e0c6fec0edee9a0c55eaf096ac5556e08ed06eac9ae?d=identicon)[IbrahimKhalil](/maintainers/IbrahimKhalil)

---

Top Contributors

[![IbrahimKhalil](https://avatars.githubusercontent.com/u/8594928?v=4)](https://github.com/IbrahimKhalil "IbrahimKhalil (4 commits)")

---

Tags

serialbase36serial number16 chars alphanumeric

### Embed Badge

![Health badge](/badges/semiorbit-serial/health.svg)

```
[![Health](https://phpackages.com/badges/semiorbit-serial/health.svg)](https://phpackages.com/packages/semiorbit-serial)
```

###  Alternatives

[poing/earmark

Laravel package to generate values in a unique and customizable series.

10712.9k](/packages/poing-earmark)[xobotyi/basen

Text and integers encoding utilities for PHP with no extensions dependencies. Base32, Base58, Base64 and much more!

1219.6k](/packages/xobotyi-basen)[stechstudio/laravel-raw-sessions

A raw PHP session handler for Laravel

2297.1k](/packages/stechstudio-laravel-raw-sessions)[verbb/gift-voucher

Sell and redeem digital gift vouchers for Craft Commerce.

1322.5k1](/packages/verbb-gift-voucher)[phpexperts/workday-planner

Given a date range, this will give you all of the workdays for that country.

251.5k](/packages/phpexperts-workday-planner)[tombroucke/sage-bootstrap-components

Bootstrap 4 components for Sage

113.1k1](/packages/tombroucke-sage-bootstrap-components)

PHPackages © 2026

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