ユーザー名などの任意の文字列に対して文字色を自動で指定するサンプルを作りました。
同じ文字列に対しては常に同じ色が返ります。色の選択肢はあらかじめ用意し、その中から色が選ばれます。
色の選択肢が少ないと文字が異なっても同じ色が重複することになります。
<?php $colors = ['#ee0000', '#3a9b00', '#006ecc', '#ff9000', '#000000']; function stringToColor($str, $colors){ $index = hexdec( substr(md5($str), 0, 15) ) % count($colors); return $colors[$index]; } ?> <span style="color: <?php echo stringToColor('hello', $colors);?>">hello</span>
Similar Posts:
- [PHP]背景の明るさを基準に見やすい文字色を組み合わせる(YUV輝度)
- [CSS, jQuery]クリックされたボタンの色を変更したり文字を書き換えたりする
- [PHP]投稿数や出現回数に応じて文字サイズが変わるタグクラウド
- [PHP]円グラフを表示する(GD)
- [PHP]10進数を任意の文字を使って62進数などのn進数に相互変換する(基数変換)
- [PHP]画像を連結して数値を表示する
- [PHP]GDを使った棒グラフの描画
- [PHP]マスク画像で写真を好きな形に切り抜く(クリッピングマスク)