Generate ULIDs in PHP

Resources  |  Generate ULIDs in PHP

Generating a ULID (Universally Unique Lexicographically Sortable Identifier) in PHP can be done using the ramsey/uuid library, which supports ULID generation. Here's how to generate a ULID in PHP:

Step-by-Step Guide to Generate ULID in PHP

  1. Install the ramsey/uuid Library: Use Composer to install the ramsey/uuid library, which supports ULIDs.

    composer require ramsey/uuid
    
  2. Generate ULID: Once the library is installed, you can generate a ULID in your PHP code as follows:

    <?php
    require 'vendor/autoload.php';
    
    use Ramsey\Uuid\Uuid;
    use Ramsey\Uuid\Guid\Guid;
    
    // Generate a new ULID
    $ulid = Uuid::ulid();
    echo $ulid;  // Output: e.g., 01ARZ3NDEKTSV4RRFFQ69G5FAV
    

Example Code

Here is the complete example:

<?php
require 'vendor/autoload.php';

use Ramsey\Uuid\Uuid;

function generateUlid() {
    // Generate a new ULID
    $ulid = Uuid::ulid();
    return $ulid;
}

// Generate and print ULID
echo generateUlid();  // Output: e.g., 01ARZ3NDEKTSV4RRFFQ69G5FAV

Explanation

  1. Installing the Library:

    • The ramsey/uuid library is installed using Composer. It is a widely used library for generating UUIDs and ULIDs.
  2. Using the Library:

    • The Uuid::ulid() method generates a new ULID.
  3. Output:

    • The echo statement prints the generated ULID to the console.

Summary

By following these steps, you can easily generate ULIDs in a PHP application using the ramsey/uuid library. This approach leverages a well-maintained library to ensure that the generated ULIDs are compliant with the ULID specification and are unique, lexicographically sortable, and globally unique.