Olá pessoal, hoje eu venho aqui mostrar como pegar uma cor em hexadecimal e transformar a mesma para RGB com uma função em PHP.
Primeiro teremos que aplicar essa function abaixo na sua página de funções. No meu caso como eu trabalho com o WordPress eu adicionei a mesma no meu arquivo functions.php.
<?php | |
function hex2RGB($hex) { | |
$hex = str_replace("#", "", $hex); | |
if(strlen($hex) == 3) { | |
$r = hexdec(substr($hex,0,1).substr($hex,0,1)); | |
$g = hexdec(substr($hex,1,1).substr($hex,1,1)); | |
$b = hexdec(substr($hex,2,1).substr($hex,2,1)); | |
} else { | |
$r = hexdec(substr($hex,0,2)); | |
$g = hexdec(substr($hex,2,2)); | |
$b = hexdec(substr($hex,4,2)); | |
} | |
$rgb = array($r, $g, $b); | |
return $rgb; | |
} | |
?> |
Como vocês podem ver eu criei uma função chamada hex2RGB ela vai receber o nosso valor em hexadecimal e “quebrar” em partes para que assim possamos retornar o valor via hexdec.
Agora que já criamos a nossa função, vamos para o frontend para declarar nosso valor para ser convertido.
<?php | |
$hex_color = '#333333'; | |
$rgb_color = hex2RGB($hex_color); | |
$result_rgb = implode(", ", $rgb_color); | |
?> |
Eu criei uma variável chamada $hex_color para receber o nosso valor, mas vocês também podem declarar já dentro da propria função hex2RGB(‘#333333’);
Eu fiz dessa forma criando um variável propria, somente para ficar visualmente mais facil de visualizar e também trabalhar.
Vamos tratar o valor final com a variável $result_rgb dentro dela eu dei um implode para aplicar a virgula junto com um espaçamento entre os valor.
<style type="text/css"> | |
background-color: rgb(<?php echo $result_rgb;?>); | |
/* | |
Example how return value in your style | |
background-color: rgb('51,51,51'); | |
*/ | |
</style> |
Agora é só pegar a variável e imprimir dentro de um style para ver o resultado final <?php echo $result_rgb;?>.
Vocês podem ver que eu deixei abaixo do estilo background-color um exemplo de como irá retorna o valor em seu css.
Lembrando que com esse metodo, também funciona para trabalhar com o RGBA é só aplicar o Alpha após o último valor, por exemplo: “background-color: rgba(<?php echo $result_rgb;?>, 0.7);”.
Espero que vocês tenham gostado desse tutorial e até breve, por favor se você gostou deixe seu like e também compartilha.
Até Mais,