Webly: Decimal Para Hexadecimal - Webly

Ir para

Regras para postagem

É permitido postar livremente respostas com comentários, testes e avaliações dos scripts. Postagens contendo dúvidas sobre o script, deverão ser postadas no fórum principal de PHP

IMPORTANTE: Todos os tutoriais postados neste fórum irão automaticamente para o portal Webly. Contribua você também e faça parte da equipe de colaboradores que fazem a evolução da web. Obrigado.
Página 1 de 1

Decimal Para Hexadecimal Exemplo de função recursiva Avaliar tópico: -----

#1 Membro offline   dragun Ícone

  • Moderador Aposentado
  • Ícone
  • Grupo: Membro Amigo
  • Posts: 1321
  • Cadastrado: 23-março 07

Postou 07 agosto 2008 - 08:27


Aqui vai um pequeno exemplo de como usar um função recursiva (que chama a ela mesma)

Nesse caso, a função converte números decimais para hexadecimais de qualquer tamanho.

Pra que eu vou querer essa função?
Sei lá, as vezes você precisa converter as cores RGB decimais para Hexa...

Segue função:
<?php

	function converte_hexa($num){
						
		if($num > 15){
			$num_restante = (int)$num/16;
			$num_atual = (int)$num%16;
		}else{
			//Pequena gambi para remover o zero a esquerda
			$num_atual = (int)$num == 0 ? 16 : (int)$num;
		}
					
					
		switch($num_atual){
			case 16: $hexa = ""; break; //Pequena gambi para remover o zero a esquerda
			case 10: $hexa = "A"; break;
			case 11: $hexa = "B"; break;
			case 12: $hexa = "C"; break;
			case 13: $hexa = "D"; break;
			case 14: $hexa = "E"; break;
			case 15: $hexa = "F"; break;
			default: $hexa = $num_atual; break;
		}
						
						
		return $num <= 15 ? $hexa: monta_versao($num_restante) . $hexa;
							
	}
					
	$num = 255;
	echo monta_versao($num);

?>

http://igorvieira.com/blog
0

#2 Membro offline   Klawdyo Ícone

  • Ícone
  • Grupo: Membros
  • Posts: 59
  • Cadastrado: 20-outubro 07
  • Localização:Assu-RN

Postou 09 novembro 2008 - 10:16

dechex()
.
.
.
"Se não merece ser bem feito, não merece ser feito!!"
0

Página 1 de 1


Resposta rápida

  

1 usuário(s) está(ão) lendo este tópico
0 membro(s), 1 visitante(s) e 0 membros anônimo(s)