Curso de PHP/Referência à linguagem/Sintaxe da linguagem: diferenças entre revisões

Origem: Wikilivros, livros abertos por um mundo aberto.
[edição não verificada][edição não verificada]
Conteúdo apagado Conteúdo adicionado
m Revertidas edições por 200.245.144.94, para a última versão por X spager
Linha 19: Linha 19:
O PHP suporta todos os oito tipos primitivos.
O PHP suporta todos os oito tipos primitivos.


===== Bollean =====
===== Boolean =====
O boolean é um valor lógico que pode assumir ou ''TRUE'' ou ''FALSE''.
O boolean é um valor lógico que pode assumir ou ''TRUE'' ou ''FALSE''.



Revisão das 12h11min de 23 de fevereiro de 2007

Comentários

Comentários são tudo aquilo que descrevemos no PHP, sem que o interpretador as varre. Os comentários aceites pelo PHP podem ser de duas formas:

<?php
/* Isto é um comentário 
   de várias linhas no PHP */
echo "Comentário acima!";
?>
<?php
echo "Outro comentário!"; //Comentário de um linha só
?>

O Leitor pode escrever tudo o que quiser dentro dos comentários sem se importar com o tamanho ou o conteúdo escrito.

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 coom 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 expecificar 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 décimais, 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 Mercedes
* 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)0} = "S";  // Apresenta "Segue isto"
?>

Cabe à função strlen() essa tarefa.

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 reindixar o nosso array:
unset($arr[1]);
$array = array_values($array);
// 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!";

if ($count < 5){
  echo $var;
}
<?

O script acima exibirá "Ganhou um prémio!" se oo valor da variável $count for menor que 5.

Variáveis predefinidas

O PHP oferece varáveis predefinidas de informações vindas do servidor e do browser, 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.

$_SERVER

Variáveis criadas pelo servidor web e relacionadas com o ambiente de execução.

$_GET

Variáveis enviadas por script para o servidor via método HTTP GET.

$_POST

Variáveis enviadas por script para o servidor via método HTTP POST.

$_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

Possuí 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 realcionadas no registo da sessão no script.

Escopo de Variáveis