Skip to content

mistic100/RandomColor.php

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

20 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Random Color

PHP version

For generating attractive random colors.

This is a PHP port of David Merfield randomColor Javascript utility.

See the results on the demo.

Demo

Options

You can pass an options object to influence the type of color it produces. The options object accepts the following properties:

hue – Controls the hue of the generated color. You can pass a string representing a color name (e.g. 'orange'). Possible color names are red, orange, yellow, green, blue, purple, pink and monochrome. You can also pass an array of multiple hues or a specific hue (0 to 360).

luminosity – Controls the luminosity of the generated color. You can pass a string containing bright, light or dark.

alpha – A decimal between 0 and 1. Only relevant when using a format with an alpha channel. Defaults to a random value.

format – A string which specifies the format of the generated color. Possible values are hsv, hsl, hslCss, rgb, rgbCss, hex and their alpha variants hsva, hsla, hlsaCss, rgba, rgbaCss, hexa. Defaults to hex.

prng – A random (or not) number generator. mt_rand is used as default one.

Examples

use \Colors\RandomColor;

// Returns a hex code for an attractive color
RandomColor::one(); 

// Returns an array of ten green colors
RandomColor::many(10, array(
   'hue' => 'green',
));

// Returns a hex code for a light blue
RandomColor::one(array(
   'luminosity' => 'light',
   'hue' => 'blue',
));

// Returns one yellow or blue color
RandomColors::one(array(
    'hue' => array('yellow', 'blue'),
));

// Returns a hex code for a 'truly random' color
RandomColor::one(array(
   'luminosity' => 'random',
   'hue' => 'random',
));

// Returns a bright color in RGB
RandomColor::one(array(
   'luminosity' => 'bright',
   'format' => 'rgbCss', // e.g. 'rgb(225,200,20)'
));

// Returns a RGB color with random alpha
RandomColor::one(array(
   'format': 'rgbaCss', // e.g. 'rgba(9, 1, 107, 0.648)'
));

// Returns an hex color with specified alpha
RandomColor::one(array(
   'format': 'hexa',
   'alpha': 0.5, // e.g.: #c17d3480
));

Other languages

RandomColor is available in JavaScript, C#, C++, Go, Haskell, Kotlin, Mathematica, Python, Swift, Perl6, Objective-C, Java, R, Reason, Dart, Ruby, Rust and Swift.

License

This project is licensed under the terms of the MIT license.