After taking your course, my knowledge of PHP has ballooned! "Depois de tomar o seu curso, meu conhecimento de PHP inchou!"
Roubar

Tipos no PHP

Uma variável pode deve ser de um determinado tipo, mas em tipos PHP não são explicitamente definido, em vez do tipo variável é determinado pelo contexto em que a variável é utilizado. Isto significa, portanto, que as variáveis ​​tornar-se um tipo quando eles são atribuídos um valor que tem um tipo.

Conversão automática de tipo

PHP converte automaticamente de um tipo para outro, o que pode causar resultados inesperados. Por exemplo a conversão de falsa para uma string pode ter resultados inesperados.
value = false ; $ Valor = false;
" The value is $ value " ; echo "O valor é de R $ valor";
returns : The value is / / Retorna: O valor é
Para resolver estes tipos de problemas de PHP tem de ser instruído sobre como lidar com a variável.
value = false ; $ Valor = false;
" The value is " . ( int ) $ value ; echo "O valor é" (int) $ value.;
returns : The value is 0 / / Retorna: O valor é 0

Como você pode ver a lançar uma variável que você precisa para usar o lugar do tipo que você deseja converter para na frente da variável entre parênteses. Isso, então, se aplica esse tipo para o elenco variável estar. Note que você deve ser cuidadoso sobre o que você joga como ele pode ter alguns resultados inesperados. Por exemplo, uma fração de fundição para um inteiro irá arredondar a fração para o inteiro mais próximo.

Conversão de strings com os números

Sabia que você pode adicionar um sentance e um número para formar outro número? Bem em PHP você pode! Unfortunatley isso pode levar a resultados inesperados para que você precisa ter cuidado como você lida com isso.

value = 1 + " 4.5 " ; $ Valor = 1 + "4.5";
is float with the value 5.5 / / É float com o valor 5,5
value = 1 + " tom " ; $ Valor = 1 + "tom";
is integer with the value 1 / / É um inteiro com o valor 1
value = 1 + " 2 Green Bottles " ; $ Valor = 1 + "2 garrafas verdes";
is integer with the value 3 / / É um inteiro com o valor 3
value = 1 + " Green Bottles 2 " ; $ Valor = 1 + "garrafas verdes 2";
is integer with the value 3 / / É um inteiro com o valor 3

Como você pode ver ao adicionar uma string para um número, se a primeira parte da string é um número este é então somados. Quaisquer outros números são ignorados. Se você adicionar uma string com um float nele para um inteiro, o resultado é um float. Mais uma vez a maneira correta de resolver este problema é detectar e ou converter a variável para o tipo correto.

Detectando o tipo de uma variável

Um tipo de variável pode ser identificada usando as funções abaixo simplesmente passar a variável para a função desejada e retornará true se é desse tipo. Esta é a técnica para uma programação defensiva .

var = " hello " ; $ Var = "Olá";
Returns true if a variable is a BOOLEAN / / Retorna true se uma variável é um boleano
$ var ) is_bool ($ var)
Returns true if a variable is a STRING / / Retorna true se uma variável é uma string
$ var ) is_string ($ var)
Returns true if a variable is a NUMERIC STRING / / Retorna true se uma variável é uma seqüência numérica
$ var ) is_numeric ($ var)
Returns true if a variable is an INTEGER / / Retorna true se uma variável é um número inteiro
$ var ) is_int ($ var)
Returns true if a variable is an ARRAY / / Retorna true se uma variável é um array
$ var ) is_array ($ var)
Returns true if a variable is an OBJECT / / Retorna true se uma variável é um objeto
$ var ) is_object ($ var)
Returns true if a variable is NULL / / Retorna true se uma variável é NULL
$ var ) is_null ($ var)
Returns true if a variable is a FLOAT / / Retorna true se uma variável é um float
$ var ) is_float ($ var)

Isto é importante porque uma vez um tipo variáveis ​​particular, tem sido identificado pode então ser determinado o efeito de quaisquer operações realizadas no mesmo.


Nenhum comentário foi fornecida.
imagem de segurança
Escrito por Dominic Skinner
Última Atualização: 2011/10/25 16:00:38