kblais / laravel-uuid by kblais

A simple library to use UUIDs as your Eloquent model's primary key.
65,977
10
2
Package Data
Maintainer Username: kblais
Maintainer Contact: contact@killianblais.fr (Killian Blais)
Package Create Date: 2016-06-02
Package Last Update: 2024-04-16
Language: PHP
License: MIT
Last Refreshed: 2024-04-23 03:16:06
Package Statistics
Total Downloads: 65,977
Monthly Downloads: 692
Daily Downloads: 37
Total Stars: 10
Total Watchers: 2
Total Forks: 5
Total Open Issues: 0

laravel-uuid Build Status

A simple library to use UUIDs as your Eloquent model's primary key.

Why should I use UUIDs ?

To answer this question, I simply recommend you read this blog post.

OK, I'm convinced now. How do I install this ?

Require this package with Composer :

composer require kblais/laravel-uuid
  • the package internally use ramsey/uuid to generate the UUIDs.

Usage

First, your model's column must be a 36 characters column :

  • Laravel v4
$table->char('id', 36);
$table->primary('id');
  • Laravel v5+
$table->uuid('id');
$table->primary('id');

Then, just add the Kblais\Uuid\Uuid trait to your model, and you're done :

<?php

namespace App;

use Illuminate\Database\Eloquent\Model;
use Kblais\Uuid\Uuid;

class User extends Model
{
    use Uuid;
}

Version 4 UUIDs are used by default. You can change this by overriding the $uuidVersion & $uuidString variables. For example :

protected $uuidVersion = 1;
protected $uuidString  = ''; // only needed when $uuidVersion is "3 or 5"

The supported UUIDs versions here are "1, 3, 4 and 5".