Curso de PHP – Conversão de Tipos de Dados

Convertendo tipos no PHP

No PHP podemos converter uma variável de um tipo em outro tipo de três formas distintas:

  1. Automaticamente
  2. Explicitamente, com o uso de tapeçaria
  3. Usando uma função chamada de settype()

O PHP pode converter tipos automaticamente em alguns casos, quando ocorrem operações específicas entre dois valores que possuam tipos diferentes.

Para que façamos a conversão de tipos explicitamente usaremos os comandos de cast, de acordo com a tabela a seguir:

Operador Tipo
int ou integer inteiro
real, double ou float real com ponto flutuante
string string (cadeia de caracteres)
array vetor
object objeto

 

Veja o exemplo a seguir, onde declaramos uma variável do tipo ponto flutuante de nome var1 e depois atribuímos seu conteúdo a uma variável de nome var2, do tipo inteiro. Vamos converter explicitamente o tipo do dado:

$var1 = 40.55;
echo “Ponto flutuante: $var1 <br />”;
$var2 = (int)$var1;
echo “Inteiro: $var2”;

 

Podemos também usar a função settype() para efetuar a conversão de tipos no PHP. Essa função permite converter valores nos tipos integer, double, string, array ou object. Sua sintaxe é a seguinte:

settype(variável,”novo_tipo”);

No exemplo a seguir declaramos uma variável do tipo ponto flutuante e a convertemos para inteiro com a função settype():

$num = 2.5;
settype($num,”integer”);
echo “Valor inteiro: $num”;

TESTANDO O TIPO DE UMA VARIÁVEL

Podemos testar o tipo de uma variável usando as funções a seguir:

  • is_int()
  • is_integer()
  • is_real()
  • is_long()
  • is_float()
  • is_string()
  • is_array()
  • is_object()

Sintaxe:

is_TIPO($variável)

Essas funções retornam o valor verdadeiro se a variável testada for do tipo indicado, e falso em caso contrário.

Vejamos um exemplo. Vamos criar uma variável de nome $num e atribuir-lhe um valor de ponto flutuante. Depois, testaremos para ver se o valor contido na variável é do tipo inteiro com a função is_int():

$num = 23.8;
if(is_int($num)) {
  echo “Número inteiro”;
}
else {
  echo “O valor da variável não é um número inteiro!”;
}

Usamos um condicional if para realizar o teste. Se a variável $num for do tipo inteiro a função is_int() retornará verdadeiro e então a mensagem Número inteiro será exibida; caso contrário, a função retornará falso e a mensagem O valor da variável não é um número inteiro será exibida.

Resultado:

Testando tipos de variáveis no PHP - is_int()

Sobre Fábio dos Reis (1329 Artigos)
Fábio dos Reis trabalha com tecnologias variadas há mais de 25 anos, tendo atuado nos campos de Eletrônica, Telecomunicações, Programação de Computadores e Redes de Dados. É um entusiasta de Unix, Linux e Open Source em geral, adora Eletrônica e Música, e estuda idiomas, além de ministrar cursos e palestras sobre diversas tecnologias em São Paulo e outras cidades do Brasil.
Contato: Website

Escreva um comentário

Seu e-mail não será divulgado


*