勉強したことのメモ

Webエンジニア / プログラマが勉強したことのメモ。

PHPでランダムなカラーコードを生成する「RandomColor.php」ライブラリの利用方法

  PHP

PHPでランダムなカラーコードを生成したい。自作するとなると「0~9」「a~f」までの英数字からランダムに6桁取得すれば良いが、そうすると見づらい色とかも当然出てくる。この辺りを解決できないかと調べたところ「RandomColor.php」ライブラリが良さそう。以下にサンプルと利用方法をメモ。

 

RandomColor.php

公式サイト

https://www.strangeplanet.fr/work/RandomColor.php/

GitHub

https://github.com/mistic100/RandomColor.php

 

インストール

こちらからRandomColor.phpをダウンロードし、適当なディレクトリにアップロードする。

 

サンプル

https://taitan916.info/sample/RandomColor.php/

ページリロードの度にカラーコードが変わる点が確認できる筈。

 

利用方法

ソースコード

<?php
require 'RandomColor.php';

//生成するカラーコードの数
$count = 5;

//オプション指定なし
$colors = \Colors\RandomColor::many($count);
var_dump($colors); //array(5) { [0]=> string(7) "#ce5a5c" [1]=> string(7) "#a91cd8" [2]=> string(7) "#1df988" [3]=> string(7) "#abfce8" [4]=> string(7) "#f2ef93" }

//明るい色を指定
$light_colors = \Colors\RandomColor::many($count, array('luminosity'=>'light'));
var_dump($light_colors); //array(5) { [0]=> string(7) "#72ef6b" [1]=> string(7) "#b8f48d" [2]=> string(7) "#f28579" [3]=> string(7) "#ddffa3" [4]=> string(7) "#dcabf2" }

$green_colors = \Colors\RandomColor::many($count, array('hue'=>'green'));
var_dump($green_colors); //array(5) { [0]=> string(7) "#7cffa6" [1]=> string(7) "#2eddd8" [2]=> string(7) "#91a821" [3]=> string(7) "#71e297" [4]=> string(7) "#b6d666" } 

 

所感

公式サイトにも書かれているが彩度が適度に高い明るい色を生成してくれるらしく、それが見やすい色になるっぽい。

尚、JavaScript版もあるようなのでこちらも試してみたいところ。

 - PHP

  関連記事

PHPで画像を比較して類似度を算出する「image-comparator」ライブラリの利用方法

PHPで画像の類似度を計測したい。ただ、そのためのロジックが全く分からないためラ ...

PHPでCSVを簡単に取り扱える「LeagueCSV(thephpleague / csv)」の利用方法

PHPでCSVファイルの書き込みや読み込みを行う際、バニラPHPで対応していたが ...

PHPで配列を確認する際にvar_dumpよりも見やすくなるdBug.phpの利用方法

PHPで配列を確認する際、大抵var_dumpで出力させているがこれが見づらい。 ...

HTML / CSSで作成したコンテンツをPDFファイルで出力する方法(TCPDF)

HTML / CSSで作成したコンテンツをPDFファイルで出力させたい。以前mp ...

Composer無し&ファイル1枚でPHPのエラーメッセージ画面をリッチにするライブラリ「PHP Error」の利用方法

先日PHPのエラーメッセージを見やすくするwhoopsの利用方法をメモしたが導入 ...