shiftechafrica/shift-code-generator
最新稳定版本:v1.5.3
Composer 安装命令:
composer require shiftechafrica/shift-code-generator
包简介
This package generates code in relation to year, date and month. For instance, it uses A - Z letters for months.
README 文档
README
🚀 Introduction
Shift Code Generator is a lightweight Laravel/PHP package that generates unique alphanumeric codes based on the year, month, and day, followed by a randomized string.
It’s ideal for applications that require sequential or time-based identifiers — such as transaction IDs, invoice numbers, or reference codes.
For example:
1E1NKJDQVW
- 1 → Represents the number of years since the start year
- E → Represents the month (A–Z mapping)
- 1 → Represents the day of the month
- NKJDQVW → Randomly generated string
This logic mimics the behavior of M-Pesa transaction IDs, ensuring unique, traceable, and time-bound identifiers.
⚙️ Installation
Install via Composer:
composer require shiftechafrica/shift-code-generator
Update to the latest version:
composer update shiftechafrica/shift-code-generator --lock
If the package isn’t automatically discovered, run:
composer dump-autoload
Publish the configuration file:
php artisan vendor:publish --provider="ShiftechAfrica\CodeGenerator\ShiftCodeGeneratorServiceProvider"
This will create a config file at:
config/shift-code-generator.php
⚙️ Configuration
In your .env file, add the following:
YEAR_OF_START=2020 # The year your application was launched USE_DATABASE=false # Set to true to use database tracking, or false to use static year configuration
If you enable database tracking, seed the database by adding this entry to your DatabaseSeeder:
/** * Seed the application's database. * * @return void */ public function run() { // Other seeds... $this->call(\ShiftechAfrica\CodeGenerator\Seeds\ShiftCodeGeneratorFactory::class); }
This ensures your application initializes with proper baseline data for generating codes dynamically.
🧩 Usage
Generate unique codes easily within your application.
use ShiftechAfrica\CodeGenerator\ShiftCodeGenerator; /** * Generate a new Shift Code * * @return string */ public function generateCode() { return (new ShiftCodeGenerator())->generate(); // Optionally pass an integer to set the random length, e.g. ->generate(5) }
Example Output
1E1NKJDQVW
- 1 = Year offset
- E = Month letter
- 1 = Day
- NKJDQVW = Random string
🧭 Version Guidance
| Version | Status | Packagist | Namespace | Release |
|---|---|---|---|---|
| 1.x | ✅ Latest | shiftechafrica/shift-code-generator |
ShiftechAfrica\CodeGenerator |
v1.5.2 |
🛡️ Security Vulnerabilities
If you discover a security vulnerability, please contact:
📧 Bugs
📄 License
This package is open-source software licensed under the
MIT License
统计信息
- 总下载量: 2.51k
- 月度下载量: 0
- 日度下载量: 0
- 收藏数: 1
- 点击次数: 0
- 依赖项目数: 0
- 推荐数: 0
其他信息
- 授权协议: MIT
- 更新时间: 2020-05-01