Guia Rapido de Comandos PHP

Page 1

RESUMO EAGS SIN – BIBLIOGRAFIA – PROGRAMAÇÃO WEB PARTE 1 ASP – PHP – JSP Todas estas linguagens são voltadas para internet, funcionando em um servidor web, são interpretáveis e possuem características próprias. Podem ficar embutidas no código HTML.

2009

Principais diferenças entre ASP, PHP e JSP

ASP Não, somente windows Não (Microsoft) Não Free

PHP

JSP

Sim

Sim

Sim Sim Free

Sim Sim Free

Sim

Sim

Sim

Linguagens de programação suportadas

VBScript, JScript

PHP

Geração dinâmica de HTML Escalabilidade desde pequenas até grandes aplicações Web Compatibilidade com Banco de Dados legados

Sim

Sim

Java, JavaScript Sim

Sim

Sim

Sim

Sim Sim, ADO(ActiveX) ou ODBC

Sim

Sim

Sim

Sim através de ODBC e JDBC

Multi-Plataformas Open Source Multiplos Servidores Web Preço Habilidade para separar a geração do conteúdo e da apresentação

1

Capaz de integrar com diversas fontes de dados

COM, Beans outros

e

Componentes

COM

PHP – Personal Home Page

Tipos Suportados Inteiro $teste = 1234; # inteiro positivo na base decimal $teste = -234; # inteiro negativo na base decimal $teste = 0234; # inteiro na base octal simbolizado pelo 0 equivale a 156 decimal $teste = 0x34; # inteiro na base hexadecimal(simbolizado pelo 0x) equivale a 52 decimal.

Delimitando Código <?php <script comando language=”php” s > ?> comandos </script>

<? comando s ?>

<% comando s %>

Variáveis Observação: Toda variável em PHP tem seu nome composto pelo caractere $ e uma string, que deve iniciar por uma letra ou o caractere “_”.PHP é case sensitive, ou seja, as variáveis $teste e $TESTE são diferentes. Por isso é preciso ter muito cuidado ao definir os nomes das variáveis. É bomevitar osnomes emmaiúsculas, pois como veremos mais adiante, o PHP já possui algumas variáveis pré-definidas cujos nomes são formados por letras maiúsculas. São do tipo Variant. Comentários // ou # - Uma linha; /**/ - Múltiplas linhas <? print “teste1”; #isto é um teste print “teste2”; //este teste é similar ao anterior print “teste3”; /*este teste é similar ao anterior com mais de uma linha */ ?> Imprimindo código html <? <? <? <? print(texto); print echo echo texto; ?> texto; (texto1, ?> ?> texto2, ... ); ?>

Beans ou Tags

Números em Ponto Flutuante (double ou float) $teste = 1.234; $teste = 23e4;# equivale a 230.000 Strings Aspas Simples ( ‘ ) – Desta maneira, o valor da variável será exatamente o texto contido entre as aspas (com exceção de \\ e \') Aspas Duplas ( " ) – Desta maneira, qualquer variável ou caractere de escape será expandido antes de ser atribuído. <? $teste = "PHP"; $teste = '--$teste--\n'; print "$teste"; ?> Será impresso "---$teste--\n".

<? $teste = "PHP"; $teste = "---$teste---\n"; print "$teste"; ?> Será impresso "---PHP--"

Vetores Observação: Os índices podem ser de qualquer tipo além de serem numéricos. <? <? $cor[1] $cor = array(1 => “vermelho”, =“vermelho”; 2 => “verde”, 3 => “azul”,

Por Nissandro Ribeiro


RESUMO EAGS SIN – BIBLIOGRAFIA – PROGRAMAÇÃO WEB PARTE 1 $cor[2]= “verde”; $cor[3] = “azul”; $cor[“teste”]= 1; ?>

“teste” => 1); ?>

2009

+ adição - subtração * multiplicação / divisão % módulo

. concatenação

= atribuição simples += atribuição com adição -= atribuição com subtração *= atribuição com multiplicação /= atribuição com divisão %= atribuição com módulo .= atribuição com concatenação

Bit a bit & “e” lógico | “ou” lógico ^ ou exclusivo ~ não (inversão) << shift left >> shift right

Lógico and “e” lógico or “ou” lógico xor ou exclusivo ! não (inversão) && “e” lógico || “ou” lógico

Comparação == igual a != diferente de < Menor que > maior que <= Menor ou igual a >= maior ou igual a

Lista Permite fazer atribuição múltiplas de variáveis list($a, $b, $c) = array(“a”, “b”, “c”); Objetos class teste { function nada() { print “nada”; 2} } $teste = new teste(); $teste->nada(); Boolean – O PHP não possui tipo de dados Booleano. Usa 0 para falso e 1 para verdadeiro Coerções $teste = “1”; // $teste é a string “1” $teste = $teste + 1; // $teste é o integer 2 $teste = $teste + 3.7;// $teste é o double 5.7 $teste = 1 + 1.5 // $teste é o double 2.5 1. É analisado o início dastring. Se contiver um número, ele será avaliado. Senão, o valor será 0 (zero); 2. O número pode conter um sinal no início (“+” ou ““); 3. Se a string contiver um ponto em sua parte numérica a ser analisada, ele será considerado, e o valor obtido será double; 4. Se a string contiver um “e” ou “E” em sua parte numérica a ser analisada, o valor seguinte será considerado como expoente da base 10, e o valor obtido será double; $teste = 1 + “10.5”; // $teste == 11.5 $teste = 1 + “-1.3e3”; // $teste == -1299 $teste = 1 + “teste10.5”; // $teste == 1 $teste = 1 + “10testes”; // $teste == 11 $teste = 1 + "10testes"; // $teste == 11 $teste = 1 + "+10testes"; // $teste == 1 Transformação Explicita de Tipo - TypeCast $teste = 15; // $teste é integer (15) $teste = (double)$teste // $teste é double (15.0) $teste = 3.9 // $teste é double (3.9) $teste = (int)$teste// $teste é integer (3) o valor decimal é truncado (int), (integer) cast para integer; (real), (double), (float) cast para float; (string) cast para string; (array) cast para array; (object) cast para objeto. settype $teste = 15; // $teste é integer settype($teste,double) // $teste é double Operadores Aritméticos

Strings

Atribuição

IF if (expressao1)?(expressao2):(expressao (expressão 3) ) (1=1)? “verdade”:“falso”; comando; else comando; SWITCH if ( $i == 0 ) print “i é igual a zero”; elseif ( $i == 1 ) print “i é igual a um”; elseif ( $i == 2 ) print “i é igual a dois”; switch ( $i ) { case 0: print “i é igual a zero”; break; case 1: print “i é igual a um”; break; case 2: print “i é igual a dois”; break; } WHILE while ( condição do { ) commando; comando; comando; } while ( condição ); FOR for ( inicialização; condição; incremento) comando; Quebra de fluxo Break - interpretador PHP para imediatamente a execução do laço, seguindo normalmente o fluxo do script. Continue - O comando continue também deve ser utilizado no interior de laços, e funciona de maneira

Por Nissandro Ribeiro


RESUMO EAGS SIN – BIBLIOGRAFIA – PROGRAMAÇÃO WEB PARTE 1 semelhante ao break, com a diferença que o fluxo ao invés de sair do laço volta para o início dele. Funções - Argumentos com valores padrão (default) function soma5($numero) { $numero += 5; } $a = 3; soma5($a); //$a continua valendo 3 function soma5(&$num1, $num2) { $num1 += 5; $num2 += 5; 3} $a = $b = 1; soma5($a, $b); /* Neste caso, só $num1 terá seu valor alterado, pois a passagem por referência está definida na declaração da função. */ soma5($a, &$b); /* Aqui as duas variáveis terão seus valores alterados. */ Funções - Passagem de parâmetros por referência function teste( $teste = “testando” ) { print $teste;} teste();// imprime “testando” teste(“outro teste”);// imprime “outro teste” GLOBAL $teste = "Testando"; function teste() { print $GLOBALS["teste"]; // imprime $teste print $teste; // não imprime nada } teste() Static function teste() { static $a = 0; print $a; $a++; } Faz com que o valor da variável não se perca ao término da função Variáveis Variáveis <?php $a = "hello"; $$a = "world"; print $hello;//Imprime “world” ?> Variáveis enviadas pelo navegador Se seu script PHP está localizado em “http://localhost/teste.php” e você o chama com a url http://localhost/teste.php?nome=paulo”, automaticamente o PHP criará uma variável com o nome $nome contendo a string “paulo”. URLencode e URLdecode O formato urlencode é obtido substituindo os espaços pelo caractere “+”e todos os outros caracteres não alfanuméricos (com exceção de “_”) pelo caractere “%”seguido do código ASCII em hexadecimal. Por exemplo: o texto “Testando 1 2 3 !!” em urlencode fica “Testando+1+2+3+%21%21” Verificando o tipo de uma variável Gettype($variavel) - Função que retorna o tipo da variável: Integer, String, Double e etc.

2009

is_int(), is_integer(), is_real(), is_long(), is_float(), is_string(), is_array() e is_object() retorna verdadeiro ou falso quando for do tipo testado Verificando se uma variável possui um valor Isset() - Ela retorna true se a variável estiver setada (ainda que com uma string vazia ou o valor zero), e false em caso contrário. empty() - Ela retornatruese a variável não contiver um valor (não estiver setada) ou possuir valor 0 (zero) ou uma string vazia. Caso contrário, retorna false. Constantes define ("VALOR", 15); print VALOR; Banco de Dados Conectar mysql_connect (“host” , “usuario” , “senha” ); conexão temporária, é encerrada ao final da execução do script. mysql_pconnect (“host” , “usuario” , “senha” ); conexão permanente, não é encerrada ao final da execução do script. Ambos retornam um número de identificação para a conexão criada. Selecionar Base de dados mysql_select_db(nome da conexão);

base,

identificador

da

Selecionar dados mysql_query(“select * from mytable”, conexão ); Toda operação de seleção gera um resultset. Este comando pode ser usado para inserir, alterar e excluir dados (insert, update e delete). Apagando o Resultset mysql_free_result( resultset ); Selecionado o número de linhas mysql_num_rows( resultset );

Utilizando os Resultados mysql_fetch_array( resultset ); - Retorna um array onde os índices podem ser numéricos iniciando por 0 ou podem ser os nomes dos campos ou aliases das tabelas; mysql_fetch_row( resultset ); - Retorna um array onde os índices podem ser numéricos iniciando por 0; mysql_fetch_assoc( resultset ); - Retorna um array onde os índices serão os nomes dos campos ou aliases das tabelas; Fechar Conexão mysql_close(identificador da conexão); Obs: Onde esta escrito mysql nos comandos acima, podemos substituí-los por mssql (para banco de dados Microsoft SQL Server ou ODBC para fonte de dados genéricas) Cookie Criando setcookie(nome, secure);

valor,

expiração,

path,

dominio,

Por Nissandro Ribeiro


RESUMO EAGS SIN – BIBLIOGRAFIA – PROGRAMAÇÃO WEB PARTE 1 Sendo que: nome nome do cookie; valor valor armazenado no cookie; exp data de expiração do cookie(opcional), no formato Unix. Se não for definida, o cookie expirará quando o browser for fechado; path path do script que gravou o cookie; domínio domínio responsável pelo cookie; secure valor 1, indica que o cookie só pode ser transmitido por uma conexão segura (https). Lendo setcookie(“nome”, “Joãzinho da Silva”); 4 $ _COOKIE[“nome”]; // Joãzinho da Silva Ou simplesmente através da variável $nome Session Iniciando session_start() Finalizando session_destroy() Lendo e gravando print ($_SESSION[‘CONTADOR’]); $_SESSION[‘CONTADOR’] = 10; Manipulação de arquivos 1 - Copiando copy( origem, destino); 2 - Verificando tamanho filesize(arquivo); Esta função retorna um inteiro com o tamanho do arquivo, em bytes, ou false em caso de erro. 3 - Verificando se existe file_exists(arquivo); 4 – Limpando Cache clearstatcache(); 5 - Abrindo arquivos fopen(Arquivo, Permissão); Permissões: R - Abre o arquivo com permissão apenas para leitura. R+ - Abre o arquivo com permissão para escrita e leitura, posicionando o ponteiro no início do mesmo. W - Abre o arquivo com permissão apenas para escrita. Se o arquivo existir, todo o conteúdo é apagado. Se não existir, o PHP tenta criá-lo. O ponteiro é posicionado no início do arquivo W+ - Abre o arquivo com permissão para escrita e leitura. Se o arquivo existir, todo o conteúdo é apagado. Se não existir, o PHP tenta criá-lo. O ponteiro é posicionado no início do arquivo A - Abre o arquivo com permissão apenas para escrita. Se o arquivo não existir, o PHP tenta criá-lo. O ponteiro é posicionado no final do arquivo. A+ - Abre o arquivo com permissão para escrita e leitura. Se o arquivo não existir, o PHP tenta criá-lo. O ponteiro é posicionado no final do arquivo.

2009

8 - Escrevendo em arquivos fwrite( arquivo, conteudo, tamanho); E-mail mail(destinatario, assunto, mensagem, headers); Erros 1 - Erros de Função Para sumprimir e/ou tratar mensagens de erro de funções, basta preceder a chamada da função com o sinal de @. <? @fopen('/tmp/f7g6b6','r'); ?> 2 – Erros Globais Podemos usar a funçãoerror_reporting()para configurar o nivel de errosque desejamos que sejam exibidos naexecução do script. <? //Desabilita todas as mensagens de erro error_reporting(0); //Reporta erros simples de funcionamento do script error_reporting(E_ERROR | E_WARNING | E_PARSE); //Reporta E_NOTICE error_reporting (E_ERROR | E_WARNING | E_PARSE | E_NOTICE); //Reporta todos erros exceto E_NOTICE //Este é o valor padrão do php.ini error_reporting (E_ALL ^ E_NOTICE); //Reporta todos erros error_reporting (E_ALL); //Idêntico ao error_reporting(E_ALL); ini_set ('error_reporting', E_ALL); ?> Tabela de Códigos de Erro E_ERROR Fatal run-time errors E_WARNINGRun-time warnings E_PARSECompile-time parse errors E_NOTICERun-time notices E_CORE_ERRORFatal startup errors E_CORE_WARNINGStartup warnings E_COMPILE_ERRORFatal compile-time errors E_COMPILE_WARNING Compile-time warnings E_USER_ERRORUser-generated errors E_USER_WARNINGUser-generated warnings E_USER_NOTICEUser-generated notices E_ALLAll of the above 3 - Die/Exit A função die() é um apelido para a função exit() e serve para terminar a execução dos scripts em caso de erros. A função exibe uma mensagem de erro personalizada antes de encerrar a execução do script. <? $filename = '/caminho/para/arquivo'; $file = fopen ($filename, 'r') or exit("Não pude abrir o arquivo $filename)"); ?>

6 - Fechando Arquivos fclose(arquivo); 7 - Lendo arquivos fread( arquivo, tamanho);

Por Nissandro Ribeiro


Issuu converts static files into: digital portfolios, online yearbooks, online catalogs, digital photo albums and more. Sign up and create your flipbook.