Técnico em Informática - Senac • Operadores, variáveis e constantes Cledison Eduardo Fritzen Operadores de comparação Operador Comportamento == verdadeiro se os argumentos forem iguais != Falso se os argumentos forem iguais < Verdadeiro se o argumento da esquerda for maior que o da direita > Verdadeiro se o argumento da direita for maior que o da esquerda <= Verdadeiro se o argumento da esquerda for maior ou igual ao da direita >= Verdadeiro se o argumento da direita for maior ou igual ao da esquerda === Verdadeiro se os argumentos forem iguais entre si e do mesmo tipo Operadores lógicos Operador Comportamento And Or ! verdadeiro se ambos argumentos forem verdadeiros verdadeiro se um ou ambos os argumentos forem verdadeiros Verdadeiro se um único argumento a direita for falso Xor Verdadeiro se qualquer um mas não ambos os argumentos forem verdadeiros && Semelhante ao and, || Semelhante ao or Variáveis - características • Possuem sinal de cifrão ($) • Não podem iniciar com números ou caracteres especiais • Tipagem dinâmica • Valor mais recente atribuído • São atribuídas com o sinal de = • Não necessitam ser declaradas • Não possuem tipo intrínseco • Têm valor padrão Manipulando variáveis Atribuição $pi = 3 + 0.14159; Reatribuição $var = “Curso de PHP”; $var = “3 + 0.14159”; Manipulando variáveis - exemplo <html> <head> <title>Site do curso</title> </head> <body> <?php $descricao = “Aula de”; $nome = “Linguagem de Programação PHP”; echo “Seja bem-vindo à $descrição em $nome”; ?> </body> </html> Tipos de variáveis • • • • • • • Inteiros – todos os números integrais, sem ponto de fração decimal Double – números de dupla precisão ou de ponto flutuante. Booleano – têm apenas dois possíveis valores (verdadeiro e falso) Null – é um tipo especial que só tem um valor: null Strings – são sequências de caracteres Arrays – são coleções identificadas e indexadas de outros valores Objetos – são instâncias de classe definidas pelo programador, podem empacotar tanto tipos de valores como métodos de uma classe • Recursos – são variáveis especiais que armazenam referências para recursos externos ao PHP Testando o tipo de uma variável Gettype() retorna uma string que representa o tipo da variável testada <?php $numero = (5 * 100)/10; $palavra = “Aula de PHP"; $array = array("um", "dois", "tres"); echo gettype($numero)."<br />"; echo gettype($palavra)."<br />"; echo gettype($array)."<br />"; ?> Escopo de variáveis • Escopo é um termo técnico para regras sobre quando um nome tem o mesmo significado em dois lugares diferentes <?php $a = 1; $b = 2; function Soma() { global $a, $b; $b = $a + $b; return $b; } Echo Soma(); echo $b; ?> Variáveis pré-definidas • O PHP oferece um grande número de variáveis predefinidas para qualquer script que ele execute. Muitas destas variáveis, entretanto, não podem ser completamente documentadas uma vez dependem de diversos fatores, como o servidor no qual scripts são executados, a versão e configuração deste servidor e outros. Variáveis pré-definidas $_SERVER - Variáveis criadas pelo servidor web ou diretamente relacionadas ao ambiente de execução do script atual. $_COOKIE - Contém um array associativo de variáveis passadas para o script atual através de cookies HTTP. $_GET - Contém um array associativo de variáveis passadas para o script atual através do método HTTP GET. $_POST - Contém um array associativo de variáveis passadas para o script atual através do método HTTP POST. $_FILES - Contém um array associativo dos itens carregador no script atual através do método HTTP FILES. $_SESSION - Contém um array associativo das variáveis de sessão disponíveis para o script atual. $GLOBALS - Um array associativo contendo referências para todas as variáveis atualmente definidas no escopo global do script. Os nomes das variáveis são as chaves do array. Variáveis pré-definidas Exemplo $_SERVER <?php $ arquivo = $_SERVER["PHP_SELF"]; $host = $_SERVER["SERVER_NAME"]; $software = $_SERVER["SERVER_SOFTWARE"]; $protocolo = $_SERVER["SERVER_PROTOCOL"]; $documento = $_SERVER["DOCUMENT_ROOT"]; $ip_cliente = $_SERVER["REMOTE_ADDR"]; $host_cliente = gethostbyaddr($ip_cliente); $servidor = $_SERVER["SERVER_SIGNATURE"]; echo "O arquivo que esta sendo usado é: ".$arquivo."<br />"; echo "O hostname do servidor é: ".$host."<br />"; echo "O servidor que esta sendo usado é: ".$software."<br />"; echo "O protocolo que esta sendo usado é: ".$protocolo."<br />"; echo "O caminho do endereço é: ".$documento."<br />"; echo "O endereço IP do cliente é: ".$ip_cliente."<br />"; echo "O hostname do cliente é: ".$host_cliente."<br />"; echo "Informações adicionais".$servidor."<br />"; ?> Variáveis pré-definidas Exemplo $_GET <a href="get.php?var=teste" >Clique aqui para enviar uma informação para outra página.</a> <br /><br /> <? if (isset($_GET["var"])) Echo "A variável GET esta setada"; else Echo "A variável GET não esta setada"; echo "<br /><br />"; echo "O valor da variável GET é: <strong>".$_GET["var"]."</strong>"; ?> Variáveis pré-definidas Exemplo $_POST <form action="post.php" method="post" > <span>Digite aqui alguma coisa:</span> <input name="var" /> <input type="submit" value="Enviar" /> </form> <br /> <? if (isset($_POST["var"])) echo "A variável POST esta setada"; else echo "A variável GET não esta setada"; echo "<br /><br />"; echo "O valor da variável POST é: <strong>".$_POST["var"]."</strong>"; ?> Variáveis variáveis • Algumas vezes é útil poder trabalha com variáveis variáveis, ou seja utilizar nomes de variáveis dinamicamente. <?php $nome = "fulano"; $$nome = "de tal"; echo "$nome $fulano"; ?> Constantes • Além das variáveis, que podem ser reatribuídas, o PHP oferece constantes, que têm um único valor por todo o seu tempo de vida. As constantes não possuem um $ antes de seus nomes. <?php define ("pi", 3.1415926536); $raio = 5; $circunf = 2*pi*$raio; echo $circunf; ?> Arrays <? $so = array("windows", "linux", "mac", "lynx", "freebsd"); for ($for=0;$for<sizeof($so);$for++) { echo "O Sist. Operacional na posição $for do array é: ".$so["$for"]."<br />"; } ?>