PHP function that generates a random hexadecimal color code

Rumman Ansari   2023-03-03   Developer   web development > color code   262 Share

Here's an example PHP function that generates a random hexadecimal color code:

<span class="pln">
</span><span class="kwd">function</span><span class="pln"> randomColor</span><span class="pun">()</span><span class="pln"> </span><span class="pun">{</span><span class="pln">
  $color </span><span class="pun">=</span><span class="pln"> </span><span class="str">'#'</span><span class="pun">;</span><span class="pln">
  $color </span><span class="pun">.=</span><span class="pln"> str_pad</span><span class="pun">(</span><span class="pln">dechex</span><span class="pun">(</span><span class="pln">mt_rand</span><span class="pun">(</span><span class="lit">0</span><span class="pun">,</span><span class="pln"> </span><span class="lit">255</span><span class="pun">)),</span><span class="pln"> </span><span class="lit">2</span><span class="pun">,</span><span class="pln"> </span><span class="str">'0'</span><span class="pun">,</span><span class="pln"> STR_PAD_LEFT</span><span class="pun">);</span><span class="pln"> </span><span class="com">//red</span><span class="pln">
  $color </span><span class="pun">.=</span><span class="pln"> str_pad</span><span class="pun">(</span><span class="pln">dechex</span><span class="pun">(</span><span class="pln">mt_rand</span><span class="pun">(</span><span class="lit">0</span><span class="pun">,</span><span class="pln"> </span><span class="lit">255</span><span class="pun">)),</span><span class="pln"> </span><span class="lit">2</span><span class="pun">,</span><span class="pln"> </span><span class="str">'0'</span><span class="pun">,</span><span class="pln"> STR_PAD_LEFT</span><span class="pun">);</span><span class="pln"> </span><span class="com">//green</span><span class="pln">
  $color </span><span class="pun">.=</span><span class="pln"> str_pad</span><span class="pun">(</span><span class="pln">dechex</span><span class="pun">(</span><span class="pln">mt_rand</span><span class="pun">(</span><span class="lit">0</span><span class="pun">,</span><span class="pln"> </span><span class="lit">255</span><span class="pun">)),</span><span class="pln"> </span><span class="lit">2</span><span class="pun">,</span><span class="pln"> </span><span class="str">'0'</span><span class="pun">,</span><span class="pln"> STR_PAD_LEFT</span><span class="pun">);</span><span class="pln"> </span><span class="com">//blue</span><span class="pln">
  </span><span class="kwd">return</span><span class="pln"> $color</span><span class="pun">;</span><span class="pln">
</span><span class="pun">}</span><span class="pln">
</span>

This function generates a random 6-digit hexadecimal color code by concatenating the hexadecimal values of red, green, and blue components. The mt_rand() function is used to generate a random number between 0 and 255, and dechex() function is used to convert the number to a two-digit hexadecimal value. The str_pad() function is used to ensure that each component has two digits, adding leading zeros if necessary.

You can call this function like this:

<span class="pln">
$color </span><span class="pun">=</span><span class="pln"> randomColor</span><span class="pun">();</span><span class="pln">
echo $color</span><span class="pun">;</span><span class="pln">
</span>

This will output a random color code like "#3e7ab3".