Curso de PHP/Variáveis: mudanças entre as edições
imported>Abacaxi Sem resumo de edição |
imported>Abacaxi m (Abacaxi moveu a página Curso de PHP/Comandos/Variáveis para Curso de PHP/Variáveis) |
(Sem diferença)
|
Edição das 19h57min de 27 de abril de 2013
Sobre as variáveis
- Começam sempre pelo símbolo $ seguido de uma letra
- Podem conter símbolos numéricos (0 - 9) alfanuméricos minúsculos (a - z) e alfanuméricos maíusculos
- Não podem conter espaços! Se tiverem mais do que uma palavra deverão ser interligadas por um underscore _
Por exemplo: $total_variavel
Alguns exemplos de variáveis
<?php $minha_variavel=4; $minha_string="super "; echo "$minha_string "." $minha_variavel"; ?>
O ponto "." após a variável $minha_string concatena as variáveis.
Deverá escrever na tela do navegador:
super 4
Tipos
O PHP suporta todos os oito tipos primitivos.
Boolean
O boolean é um valor lógico que pode assumir ou TRUE ou FALSE.
Neste exemplo o valor boleano é nos dado a conhecer pela função ''gettype()'': <?php echo gettype((bool) ""); // bool(false) echo gettype((bool) 1); // bool(true) echo gettype((bool) "foo"); // bool(true) ?> Aqui apresentamos duas variáveis com valores lógicos: <?php $foo = TRUE; $foo = FALSE; ?>
Como podemos ver no exemplo acima, uma expressão tem um valor boleano TRUE se ela contiver alguma coisa, e FALSE se o seu conteúdo for nulo.
Inteiros
Um inteiro é um número do conjunto Z = { ...,-3,-2,-1,0,1,2,3,... } Pode-se especificar através de notação decimal (de base 10), hexadecimal (base 16) ou octal (base 8), opcionalmente precedido de sinal (- ou +).
Representação de inteiros: <?php $a = 1234; # número decimal $a = -123; # número negativo $a = 0123; # número octal - precedido de um 0 - equivalente a 83 em decimal $a = 0X1A; # número hexadecimal - precedido de um 0 e um X - equivalente a 26 em decimal
Se você especifica um inteiro além dos limites de um inteiro, o PHP lê-o como um ponto flutuante:
<?php $num = 2147483647; var_dump($num); // Saída: int(2147483647) ?> <?php $num = 2147483648; var_dump($num); // Saída: float(2147483648) <?
É necessário ter em atenção que na saída de uma fracção para um inteiro, os arredondamentos não seguem a regra matemática, sendo assim é necessário o uso da função round():
<?php var_dump(25/7); //float(3.5714285714286) var_dump((int) 25/7); //int(3) var_dump(round(25/7)); //float(4)
Evite transformar uma fracção de valor desconhecido para inteiro.
Números de ponto flutuante
Os números de ponto flutuante (floats e doubles) são números com casas decimais, onde, aqui, a vírgula é substituída por um ponto:
<?php $a = 1.234; $b = 1.3e4; $c = 25.4E-10; ?>
Aqui também é necessário ter em atenção os arredondamentos.
Strings
Uma string é uma série de caracteres sem limites de comprimento. Ela é delimitada, no PHP, por Aspas, apóstrofo ou pela nova sintaxe heredoc:
<?php echo 'string delimitada por apóstrofos!'; echo "string delimitada por Aspas"; echo <<<EOF String delimitada por um heredoc EOF; ?>
A inclusão de variáveis funciona aqui de várias maneiras. Vamos ver:
<?php $carro = "Mercedes"; echo "Ele comprou um bonito $carro"; // funciona echo "Eles compraram vários {$carro}s"; // funciona echo "Eu faço um ${carro}"; // funciona ?> As saídas serão: * Ele comprou um bonito Mercedes * Eles compraram vários Mercedess * Eu faço um Mercedes
Podemos também modificar strings:
<?php $str = "Olha que alí há mal"; // Apresenta "Olha que alí há mal" $str{strlen($str)-1} = "r"; // Apresenta "Olha que alí á mar" ?> <?php $str = "Pegue isto"; // Apresenta "Pegue isto" $str{strlen($str)-10} = "S"; // Apresenta "Segue isto" ?>
Cabe à função strlen() essa tarefa.
Função strlen(): Retorna o tamanho de uma String.
Arrays
Um array é um mapa ordenado, com chaves e valores. Vejamos um exemplo:
<?php $arr = array(1 => "um", 2 => "dois", 3 => TRUE); echo $arr[1]; // Imprime "um" echo $arr[3]; // Imprime "TRUE" ?>
Aqui nos é apresentado 3 chaves (1,2 e 3) e 3 valores ("um", "dois" e TRUE). Então podemos pegar uma chave de um array para imprimir-mos o valor correspondente. Podemos também definir um array como vários array:
<?php $arr = array("versão" => array ("beta" => "0.5x", "alpha" => "0.1x", "release" => "0.8x", "final" => "1.x" ), "nome" => "PHP software", "SO" => array("win" => "Windows", "lin" => "Linux", "mac" => "MacOS" ) ); // Vamos agora remover um elemento do array, visto que o nosso software já passou a fase alpha unset($arr["versão"]["alpha"]); // Também podemos apagar o array inteiro. Já não vamos disponibilizar o nosso software unset($arr); ?>
Podemos especificar apenas valores num array, sendo que o interpretador irá tornar cada um dos valores com uma chave a partir do zero.
<?php $arr = array(1,45,23,68); echo $arr[1]; // imprime 45 // Vamos agora apagar um valor e reindexar o nosso array: unset($arr[1]); $arr = array_values($arr); // Não podemos imprimir o nosso array através de echo. Temos que fazer isso com print_r(): print_r($arr); ?>
Manipulação de Tipos
No PHP não é necessário definir-se o tipo que queremos usar, ou seja, este é determinado pelo contexto em que é usado. Por exemplo: $var = "string" >> É uma string; $var = 12 >> É um inteiro;
Para alternarmos entre os tipos usamos uma sintaxe de moldagens:
<?php $foo = 5; // $foo é um inteiro $bar = (boolean) $foo; // $bar é um boleano ?>
Moldagens permitidas:
- (int) ou (integer) - Moldar para inteiro
- (bool) ou (boolean) - Moldar para booleano
- (float), (double) ou (real) - Moldar para número de ponto flutuante
- (string) - moldar para string
- (array) - moldar para array
- (object) - Moldar para objecto
Exemplos de moldes:
<?php $str = "Eu sou string"; $int = 12; $num = 25/85; $a = (boolean) $str; $b = (string) $int; $c = (int) $num; echo $a . $b . $c; ?>
Variáveis
As variáveis são no PHP representadas por um $ seguido do nome a ela atribuído. É necessário ter em conta alguns cuidados quando criamos variáveis:
<?php $var = "Bom "; $Var = "dia!"; echo $var . $Var; // Exibe "Bom dia!" $25arrobas = "Ainda por cumprir!"; // INVÁLIDO - Nenhum nome de variável pode começar por uma expressão numérica $_25arrobas = "Quase na linha!"; // VÁLIDO - Nome começa por _ ?>
É possível escrever-se qualquer um dos 8 tipo primitivos numa variável. As variáveis são usadas para se atribuir um valor e guardá-lo na memória do computador para execução posterior:
<?php $var = "Ganhou um prémio!"; $count = 3; if ($count < 5){ echo $var; } ?>
O script acima exibirá "Ganhou um prémio!" se o valor da variável $count for menor que 5.
Variáveis predefinidas
O PHP oferece variáveis predefinidas de informações vindas do servidor e do navegador, que podem ser usadas pelo programador. são as chamadas superglobais.
$GLOBALS
Contém referências para todas as variáveis que estão disponíveis dentro do script.
<?php print_r($GLOBALS); ?>
É possível fazer a referencia de um dos itens da variável GLOBALS:
<?php echo $GLOBALS["_SERVER"]["HTTP_HOST"]; ?>
$_SERVER
Variáveis criadas pelo servidor web e relacionadas com o ambiente de execução.
Pode-se acessar os valores de _SERVER diretamente:
<?php echo $_SERVER["HTTP_USER_AGENT"]; ?>
$_GET
Variáveis enviadas por script para o servidor via método HTTP GET. O que é enviado pelo formulário é mostrado na barra de endereço.
$_POST
Variáveis enviadas por script para o servidor via método HTTP POST. O que é enviado pelo formulário não é mostrado na barra de endereço do navegador.
$_COOKIE
Variáveis enviadas por script para o servidor via cookies HTTP.
$_FILES
Variáveis enviadas para o script com todas as informações relativas aos arquivos enviados via HTTP.
$_ENV
Variáveis disponíveis no script do ambiente em execução. Em Web é igual ao $_SERVER.
$_REQUEST
Possui todas as variáveis englobadas em $_GET, $_POST e $_COOKIE. Em desuso devido à demora na realização do script!
$_SESSION
Variáveis que estão directamente relacionadas no registo da sessão no script.