Skip to content
Mickaël Outhier edited this page Oct 17, 2026 · 11 revisions

Palmo documentation

How to use

Install the library, create a new Palmo instance and call generators to get your mock data.

<?php
use moDevsome\Palmo\Palmo;

require_once './vendor/autoload.php';

$palmo = new Palmo();

// Generate a random number
$number = $palmo->number->int();

// Generate a random alphanumeric string
$string = $palmo->string->alphanum();

// Generate a Lorem ipsum paragraph
$lorem = $palmo->lorem->paragraph();

// Generate a random user email
$email = $palmo->contact->email();

// Generate a random domain name
$domain = $palmo->net->domain();

Check the documentation below to find your requested generator.

Generators

PalmoAddress

Generate a random street

  • @param StreetType $type - An optionnal street type
  • @return string - A random street name
    street(StreetType|null $type = null): string

Generate a random street number

  • @param bool $withLetter - If true, complete the number with a letter
  • @return string - A random address number
    number(bool $withLetter = false): string

Generate a random city

  • @return string - A random city
    city(): string

Generate a random country

  • @param Country $country - An optionnal country enum value
  • @return string - A random country
    country(Country|null $country = null): string

Generate a random postalCode

  • @param PostalCodeFormat $format - An optionnal country postal code format
  • @return string - A random postalCode
    postalCode(PostalCodeFormat|null $format = null): string

Generate a random address

  • @param Country $country- An optionnal country
  • @param PostalCodeFormat $postalCodeFormat- An optionnal country postal code format
  • @param StreetType $streetType - An optionnal street type
  • @param bool $numberWithLetter - If true, complete the number with a letter
  • @return Address - A random address object
    gen(Country|null $country = null, PostalCodeFormat|null $postalCodeFormat = null, StreetType|null $streetType = null, bool $numberWithLetter = false): Address

PalmoBool

Generate random boolean value

  • @return bool - A random boolean value
    gen(): bool

PalmoBusiness

Generate random company name

  • @param int $maxLength
  • @return string - A random company name
    company(int $maxLength = 20): string

Generate random product

  • @param int $maxLength
  • @return string - A random product name
    product(int $maxLength = 20): string

PalmoColor

Generate random color object

  • @return Color - A random color object
    gen(): Color

PalmoContact

Generate random email address

  • @param int $usernameLength - Optionnal username length
  • @param Person|null $person - Optionnal perso object used to generate the username
  • @return string - Email address
    email(int $usernameLength = 22, Person|null $person = null): string

Generate random phone number

  • @param PhoneFormat|null $format - Optionnal country phone format
  • @param boolean $international - If TRUE, the phone number will be prefixed with the international identifier
  • @return string - Phone number
    phone(PhoneFormat|null $format = null, bool $international = false): string

PalmoDate

Generate a random date

  • @param DateTimeMoment|null $moment - Optionnal moment
  • @param int $minimumYearDelta - Minimum diff in year between the current date and the generated date - COULD NOT BE LOWER THAN 1
  • @param int $maximumYearDelta - Maximum diff in year between the current date and the generated date - COULD NOT BE LOWER THAN 1 or LOWER THAN $minimumYearDelta
  • @throws InvalidArgumentException
  • @return DateTime A random date time object
    gen(DateTimeMoment|null $moment = null, int $minimumYearDelta = 1, int $maximumYearDelta = 30): DateTime

PalmoId

Generate a random int32 as DB row id value

  • @return int
    int(): int

Generate a random guid, DO NOT USE IT as safe guid generator

  • @return string
    guid(): string

Generate a random string similar to ulid string, this is not a real complient ulid string, DO NOT USE IT as safe ulid generator

  • @return string
    ulid(): string

Generate a random string similar to uuid string, this is not a real complient uuid string, DO NOT USE IT as safe uuid generator

  • @return string
    uuid(): string

PalmoLorem

Return a random Lorem Ipsum paragraph

  • @param int $maxLength
  • @param int $minLength
  • @return string
    paragraph(int $maxLength = 500, int $minLength = 16): string

Return a random Lorem Ipsum sentence

  • @param int $maxLength
  • @param int $minLength
  • @return string
    sentence(int $maxLength = 250, int $minLength = 24): string

Return a random Lorem Ipsum word

  • @param int $maxLength
  • @param int $minLength
  • @return string
    word(int $maxLength = 80, int $minLength = 4): string

PalmoNet

Generate a random domain name

  • @return string - A random domain name
    domain(): string

Generate a random IP address with V4 format

  • @return string - A random IP
    ipv4(): string

Generate a random IP address with V6 format

  • @return string - A random IP
    ipv6(): string

PalmoNumber

Generate random int

  • @param int $min Minimum value
  • @param int $max Max value
  • @return int A random int
    int(int $min = -9999, int $max = 9999): int

Generate random float

  • @param float $min Minimum value
  • @param float $max Max value
  • @return int A random float
    float(float $min = -9999.0, float $max = 9999.0): float

PalmoPerson

Generate a random person firstname

  • @param int $maxLength Output max length
  • @param PersonGender|null $gender - Optionnal gender
  • @return string A random last name
    firstName(int $maxLength = 20, PersonGender|null $gender = null): string

Generate a random person lastname

  • @param int $maxLength - Output max length
  • @return string - A random last name
    lastName(int $maxLength = 20): string

Generate a random person birthdate

  • @return string - A ramdom birthdate with the following format: Y-m-d
    birthDate(): string

Generate a random job

  • @return string
    job(): string

Generate a random person object

  • @param int $lastNameMaxLength - Max length of the last name string
  • @param int $firstNameMaxLength - Max length of the first name string
  • @param PersonGender|null $gender - Optionnal gender
  • @return Person - A random person object
    gen(int $lastNameMaxLength = 20, int $firstNameMaxLength = 20, PersonGender|null $gender = null): Person

PalmoPrice

Generate a random float as price amount, the value is round to 2 digits

  • @param int $min - Minimum value
  • @param int $max - Maximum value
  • @throws InvalidArgumentException
  • @return float
    amount(float $min = 0.10, float $max = 9999.90): float

Generate a random price object

  • @param int $minAmount - Minimum amount value (tax included)
  • @param int $maxAmount - Maximum amount value (tax included)
  • @param float|null $taxRate - A tax rate between 0 and 100
  • @throws InvalidArgumentException
  • @return Price
    gen(float $minAmount = 0.10, float $maxAmount = 9999.90, float|null $taxRate = null): Price

PalmoString

Generate a random alphanumeric string

  • @param int $maxLength Maximum length
  • @param int $minLength Minimum length
  • @return string A random string wich contain only alphanumeric chars in lowercase or uppercase
    alphanum(int $maxLength = 68, int $minLength = 1): string

Generate a random alpha string

  • @param int $maxLength Maximum length
  • @param int $minLength Minimum length
  • @return string A random string wich contain only alpha chars in lowercase or uppercase
    alpha(int $maxLength = 68, int $minLength = 1): string

Generate a random numeric string

  • @param int $maxLength Maximum length
  • @param int $minLength Minimum length
  • @return string A random string wich contain only digital chars
    num(int $maxLength = 68, int $minLength = 1): string