11. Suporte a banco de dados
MySQL
Oracle
Interbase
PostgresSQL
Outros
...
11
12. Criação de scripts PHP
Todo trecho de programa PHP deve estar
entre as tags <?php e ?>para que o
servidor Web saiba que esse trecho trata-se
de um código em PHP e que deve ser
processado
Exemplo:
<?php
echo "Hello, world !";
?>
12
13. Variáveis
Variáveis proveem uma maneira de atribuir
um nome a uma área de memória que
conterá um dado
Inicia por $ seguido de uma letra ou _ - é
case sensitive, isto é, sensível ao caso
(distinção entre letras maiúsculas e
minúsculas)
Por exemplo, a variável $Cor é
completamente diferente da variável $cor
13
14. Comentários
De uma linha:
// este é o comentário de uma linha
# este é o comentário de uma linha
De mais de uma linha:
delimitado por /* e */
14
15. Tipos de dados
Não é necessário declarar uma variável antes de usá-la. Basta atribuir um valor
inicial. A checagem de tipos é feita dinamicamente.
Exemplo:
$x=5;
$x="policamp";
$x=3.14;
Inteiro
Ponto flutuante
String
Array
Objeto
Checagem dinâmica de tipos
15
17. Ponto Flutuante (double ou float)
$PI=3.14;
$MOL=6.02e23; # uso da notação científica
17
18. Strings
Uma string é uma cadeia (sequência) de
caracteres delimitadas pelos caracteres " ou '
Exemplos:
"1", "Policamp", 'Campinas', 'Minas Gerais'
Strings podem ser concatenadas usando o
operador '.'
Exemplos:
$paragrafo_html = "<p>" . $texto . "</p>";
18
19. Strings
Podem ser delimitadas por aspas simples (literal)
ou aspas duplas (onde há interpretação de
varáveis e caracteres especiais).
Caracteres especiais:
n (new line)
r (carriage return)
t (tab)
(barra invertida)
$ (cifrão)
' (aspa simple)
" (aspa dupla)
19
20. Booleano
Expressa um valor lógico que pode ser verdadeiro
(TRUE) ou falso (FALSE)
Exemplo:
<?php
$valida=true;
if($valida) {
print "Validadon";
}
?>
20
21. Arrays
São estruturas de dados que podem armazenar
múltiplos valores
Exemplo:
$cores= array('vermelho', 'verde', 'azul');
$cor = $cores[1]; // retorna "verde" (2º elemento do
array)
$cores[1]='amarelo'; // atribui novo valor (ao 2º
elemento do array)
21
22. Arrays
Podem ser definidos como mapeamentos ou
vetores indexados
Exemplo:
<?php
$cores[0]="Red";
$cores[1]="Green";
$cores[2]="Blue";
?>
22
23. Arrays - tipos de índices
Ordenado baseado em número (começa
no 0) (indexada numericamente)
Associativo formado por caracteres
alfanuméricos (indexada por nome)
23
24. Arrays
// cria e inicializa um array (indexada numericamente)
$cores = array("Red", "Green", "Blue");
ou
// cria e inicializa um array usando índices
(explicitamente)
$cores = array(0=>'Red', 1=> "Green", 2=>"Blue");
ou
// cria e inicializa um array usando índices
(numéricos)
$cores[]="Red";
$cores[]="Green";
$cores[]="Blue";
24
25. Arrays Associativos
São conjunto ordenados de chaves e
valores, onde cada valor é acessado
através de uma chave associada.
Exemplo:
$estados_e_capital = array (
'SP' => 'São Paulo',
'MG' => 'Belo Horizonte',
'RJ' => 'Rio de Janeiro',
'ES' => 'Vitória'
);
25
27. Arrays (3)
Usamos a função unset() para destruir todo
o array.
27
28. Funções de array
array_pop($array) retira e retorna o último elemento do array
array_push ($array,$var) insere um ou mais elementos no fim de
um array
array_shift ($array) retira e retorna o primeiro elemento de um
array
array_unshift ($a,$val) insere um novo elemento no inicio de um
array
array_rand ($array) retorna um ou mais elementos do array
array_reverse ($array) retorna um array com ordem inversa
array_keys ($array) retorna as chaves de um array
array_values ($array) retorna os valores de um array
sizeof () retorna o número de elementos do array
count () retorna a quantidade de elementos de um array
28
29. Pseudo-Types
São tipos "falso" que ajudam da legibilidade:
mixed: indica que o parâmetro pode aceitar
múltiplos tipos mas não necessariamente
todos os tipos.
number: indica que o parâmetro pode ser
tanto integer ou float
callback
29
30. Função each
Função each Retorna o par chave/valor corrente
de um array e avança o seu cursor
Percorre os elemento de uma lista
$chamada = array (
"aluno1" => "francisco",
"alunos2" => "jose"
);
while(list($chave,$valor)=each($chamada)
{
echo "<p>Chave=[$chave],
Valor=[$valor]n";
}
30
31. Listas
Cria variáveis como se fossem arrays
Assim como array(), não é exatamente uma
função, e sim uma construção da própria
linguagem.
list() é usada para criar uma lista de variáveis em
apenas uma operação.
Exemplo:
list($a,$b,$c)=array("a","b","c");
É uma forma de atribuição de vários valores ao
mesmo tempo a diferentes variáveis
31
32. Transformação de Tipos por coerção
Coerção é a conversão de um tipo em outro tipo
diferente mediante operação realizada com tipos
diferentes. Por exemplo:
$a=1;
$a = $a + "5";
Nesse exemplo a variável $a é numérica (integer) na
primeira atribuição e string na segunda atribuição
32
33. Transformação explicita de tipos
Feita via typecast (como em linguagem
C)
Exemplo:
$a = 6; # a é um integer (6)
$a = (float) 6; # é um float (6.0)
33
35. Constantes
Uma constante é um identificador (nome) para um único valor que não se
altera durante a execução de um script)
Pré-definidas
Definidas pelo usuário
Exemplo:
define("MOL", 6.14e22);
define("PI", 3.1415);
echo MOL;
echo PI;
35
36. Constantes - Exemplo
<?php
// Nomes de constantes válidos
define("FOO", "alguma coisa");
define("FOO2", "alguma outra coisa");
define("FOO_BAR", "alguma coisa mais");
// Nomes de constantes inválidas
define("2FOO", "alguma coisa");
// Isto é válido, mas deve ser evitado:
// O PHP pode vir a fornecer uma constante mágica
// que danificará seu script
define("__FOO__", "alguma coisa");
?>
36
37. Constantes "Mágicas"
<?php
print __FILE__ ; # nome do arquivo
echo "n";
echo __LINE__; # nº da linha
echo "n";
echo __FUNCTION__; # nome da função
echo "n";
?>
37
38. Operadores
Aritméticos
Atribuição
Bit a bit
Lógicos
Comparação
Expressão condicional
Incremento e decremento
38
42. Operadores Bit a Bit
& (and) – operação E
| (or) – operação OU
^ (xor) – operação OU-exclusivo
~ (not) – operação NÃO
<< - deslocamento de bits a esquerda
multiplicação por 2
>> - deslocamento de bits a direita
divisão por 2
42
44. Operadores de Comparação (ou Condicionais)
== (igualdade)
!= (diferença)
< (menor que)
> (maior que)
<= (menor ou igual a)
>= (maior ou igual a)
44
55. Exemplo - switch
<?php
$i = 1;
switch($i) {
case 0:
print "i é igual a 0";
break;
case 1:
print "i é igual a 1";
break;
case 2:
print "i é igual a 2";
break;
default:
print "i não é igual a 0, 1 ou 2";
break;
}
?>
55
65. Comandos break e continue
break: pode ser usado em laços do, for e
while.
O break "quebra" a execução e continua
executando o próximo comando
break [n]; // onde n indica o número de
estruturas que deverão ser finalizadas
65
66. Comandos break e continue
continue: interrompe a execução e avalia
novamente a condição de teste
continue [n]; // onde n indica o número de
níveis que deverão ser iniciados
66
71. Funções definidas pelo usuário
Uma função deve ser definida com a usando a
sintaxe indicada abaixo:
<?php
function foo($arg_1, $arg_2, /* ..., */
$arg_n)
{
echo "Função Exemplo.n";
return $retval;
}
?>
71
72. Valores Retorno
A declaração return é opcional
Qualquer tipo poderá ser retornado incluindo
listas e objetos.
72
73. Exemplo do uso do return
<?php
function quadrado($num)
{
return $num * $num;
}
echo quadrado(4); // saída '16'.
?>
73
74. Exemplo: Retornando um array com múltiplos
elementos
<?php
function numeros_pequenos()
{
return array (0, 1, 2);
}
list($zero,$um,$dois)=numeros_pequenos();
?>
74
75. Passagem de parâmetros
Existem dois tipos de passagem de
parâmetros:
por valor (by value)
por referência (by reference)
O padrão é a passagem por valor.
75
77. Definição de valores padrões na chamada de funções
<?php
function incrementa($x, $valor=1)
{
$x += $valor;
return $x;
}
$a = 5;
echo "1. " . incrementa($a) . "<br>";
echo "2. " . incrementa($a,-4) . "<br>";
echo "3. " . incrementa($a,5) . "<br>";
?>
77
78. Modificadores de variáveis
Variáveis estáticas (static)
mantém o valor que lhes foi atribuído na última
execução. Usa o operador static.
Variáveis variáveis ($$)
Variáveis de ambiente
78
81. Inclusão de arquivos
include caso o arquivo não seja encontrado, é
retornado um warning e o processamento da página
continua
require caso o arquivo não seja encontrado, é
retornado um erro fatal
include_once se o arquivo já estiver sido incluso ele
será ignorado
require_once
Obs:
include e include_once retornam uma advertência
(warning) no caso de erro.
require e require_once retornam um erro fatal em caso de
erro.
81
82. Include x Require
O comando include é reavaliado a cada
chamada
A instrução require pode incluir apenas um
arquivo (a função require não inclui arquivos
dinamicamente)
82
83. Exemplo
biblioteca.php
<?php
/*
* função quadrado
* retorna o quadrado de um número
*
*/
function quadrado($num)
{
return $num * $num;
}
?>
83
84. Exemplo
teste_include.php
<?php
// carrega o arquivo com a função necessária
include 'biblioteca.php';
// imprime o quadrado de 2
echo quadrado(2);
?>
84
85. Tipo de variável
string gettype(mixed var);
Possíveis valores de retorno:
Integer
Double
String
Array
Object
Unknown type
85
87. Tratando informações recebidas de
Formulários
$_POST: array global que permite a leitura de
variáveis passadas através de um formulário
HTML usando método POST
$_GET : array global que permite a leitura de
variáveis passadas na URL através de um
formulário HTML usando método GET
87
92. Algumas funções úteis
string htmlspecialchars ( string $string [, int
$quote_style [, string $charset]] )
Converte caracteres especiais para a realidade HTML
string stripslashes ( string $str )
Retorna uma string com as barras invertidas retiradas.
( se torna ' e assim por diante.) Duas barras invertidas ()
se tornam uma ().
urlencode(string $str); Codifica uma URL
urldecode(string $str); Decodifica qualquer %##
codificado na string.
nl2br() — Insere quebras de linha HTML antes de todas
newlines em uma string
92
93. Variáveis Superglobals
$GLOBALS
Contém uma referencia a todas as variáveis disponíveis no escopo global no script. As
chaves desse array são os nomes das variáveis globais.
$_SERVER
Variáveis setadas pelo servidor web ou de outra forma relacionadas diretamente ao
ambiente de execução do ambiente corrente.
$_GET
Variáveis providas pelo script via URL query string.
$_POST
Variáveis providas pelo script via HTTP POST.
$_COOKIE
Variáveis providas ao script via HTTP cookies.
93
94. Variáveis Superglobals (2)
$_FILES
Variáveis providas ao script através do upload de arquivos via POST usando
HTTP.
$_ENV
Variáveis de ambientes providas ao script.
$_REQUEST
Variáveis providas ao script via mecanismos de entrada como GET, POST e
COOKIE. Veja também import_request_variables().
$_SESSION
Variáveis que estão registradas a uma sessão de associada a um script.
94
95. Funções úteis na validação de formulários
bool empty ( mixed $var )
– verifica se determinada variável esta vazia (nula)
strlen() – retorna o número de caracteres de uma
string
strstr() – acha a primeira ocorrência de uma
string. Se não encontrar retorna falso (FALSE)
bool isset ( mixed $var [, mixed $var [, $...]] )
Informa se a variável foi iniciada (Retorna TRUE
se var existir; FALSE senão)
95
96. Cookies e Sessions
HTTP é um protocolo "sem estado"
O que significa o protocolo HTTP ser um
protocolo "sem estado" ?
Significa que ele não guarda informações entre
uma transação e outra (elas são
independentes). Portanto é necessário um
mecanismo que permita que sejam criadas
"relações entre as transações"
96
97. Cookies e Sessions
Cookie e Session são mecanismos que
permitem armazenar informações enquanto
o usuário navega entre diferentes páginas
de um site
97
98. Exemplos de uso de cookies e sessões
Autenticação de usuários
Carrinho de compras
Exibição de anúncios ou imagens
Personalização de páginas
98
99. Uso de Cookies
É um arquivo texto armazenado no computador do
usuário (cliente) para ser posteriormente
recuperado pelo servidor
Formado por um par nome/valor
Tempo de validade: tempo no qual o cookie estará
armazenado no micro do usuário
O uso de cookie poderá ser habilitado /
desabilitado pelo navegador (no cliente)
99
100. Uso de cookies
bool setcookie (string nome [, string valor [, int validade [,
string caminho [, string dominio [, int seguro]]]]]), onde:
nome: nome do cookie (obrigatório)
valor: é o conteúdo do cookie (se não for fornecido o cookie será
removido)
validade: tempo de validade do Cookie
caminho: caminho no servidor onde o cookie estará disponível
domínio: domínio para o qual o cookie estará disponível
Seguro: 0 ou 1 (se 1 o cookie apenas será transmitido caso segue uma
conexão segura (HTTPS))
100
101. Exemplo
setcookie("username","joao@net");
setcookie ("username"); // remove o cookie
username
Obs: o envio de cookies deverá ser a primeira coisa a
ser feita na transmissão de uma página (antes
inclusive das tags <html> e <body>)
101
102. Recuperação de Cookies
Uso do array superglobal $_COOKIE
Exemplo:
setcookie("username","joao@net");
E em uma outra página:
$_COOKIE["username"]; // lê o valor do cookie
102
103. Recuperação de Cookies
IMPORTANTE: os cookies não poderão ser usados
dentro da própria página que os criou. Ele poderá
apenas ser usado a partir do envio da próxima
solicitação vinda do navegador do usuário (do
cliente)
103
104. Exemplo de uso: autenticação de usuários
"Autenticação é uma maneira que você tem
de se certificar de que somente os usuários
que possuem autorização estão acessando
uma área restrita do seu site"
104
105. Passos para Autenticação
Podemos dividir a autenticação de usuários com o
uso de cookies em três passos:
• Criação de uma página de login
• Criação de uma rotina de validação para que seja
usada nas páginas que fazem uso das áreas
restritas
• Criação de uma página de logout para os
usuários autenticados a fim de realizar a
exclusão do cookie.
105
106. Exemplo de login usando cookies
login.html página inicial de login
login.php processa o pedido de login;
valida usuário e senha no banco de dados
valida_cookies.inc valida os cookies
pagina_inicial.php página validada
logout.php limpa os cookies armazenados
no cliente; redireciona para página de login
106
107. Sessão (Session)
É um período de tempo durante o qual uma pessoa
navega pelas páginas de um site
Permitem o compartilhamento de informações entre
diferentes páginas
Cada sessão possui um session id (SID) que é um
identificador único
107
109. Criação de Sessão no PHP
Manual
Explícita (session_start)
Implícita (ao registrar uma variável com a
função session_register)
Automática
Depende da diretiva session.auto_start estar
habilitada no arquivo php.ini
109
111. Cookies x Sessões
Cookies Sessões
Tempo de duração
Tempo de duração Dura enquanto o usuário
Pode permanecer permanecer dentro do site
armazenado por mais Local de armazenamento
tempo (mesmo após o Arquivos localizados no
navegador ser eliminado) servidor (um arquivo por
sessão)
Local de armazenamento
Pequenos arquivos
armazenados na máquina
do usuário
111
112. Cookies x Sessões
Cookies Sessões
Pode permanecer armazenado por Dura enquanto o
Tempo de mais tempo (mesmo após o usuário permanecer
duração navegador ser eliminado) dentro do site
Arquivos localizados no
Local de servidor (um arquivo
Pequenos arquivos armazenados na
armazena por sessão)
máquina do usuário
mento
112
113. Parâmetros de Configuração - Session
session
Session Support enabled
Registered save handlers files user sqlite
Registered serializer handlers php php_binary wddx
113
114. Parâmetros de Configuração - Session
Directive Local Value Master Value
session.auto_start Off Off
session.bug_compat_42 On On
session.bug_compat_warn On On
session.cache_expire 180 180
session.cache_limiter nocache nocache
session.cookie_domain no value no value
session.cookie_httponly Off Off
session.cookie_lifetime 0 0
session.cookie_path / /
session.cookie_secure Off Off
session.entropy_file no value no value
session.entropy_length 0 0
session.gc_divisor 100 100
session.gc_maxlifetime 1440 1440
session.gc_probability 1 1
session.hash_bits_per_character 4 4
session.hash_function 0 0 114
115. Parâmetros de Configuração - Session
session.name PHPSESSID PHPSESSID
session.referer_check no value no value
session.save_handler files files
session.save_path C:xampptmp C:xampptmp
session.serialize_handler php php
session.use_cookies On On
session.use_only_cookies Off Off
session.use_trans_sid 0 0
115
116. Comandos básicos de saída
echo é uma comando que imprime uma ou
mais variáveis no console
print é uma função que imprime uma string no
console
var_dump imprime o conteúdo de uma
variável
print_r imprime o conteúdo de uma variável,
mas num formato mais legível para o programador
116
120. Manipulação de Arquivos e Diretórios
int fopen(string arquivo, string modo [, int
usar_path ´, resource contexto]])
onde:
arquivo:
modo:
usar_path:
contexto:
120
121. Manipulação de strings – algumas funções
strtoupper() retorna a string usando letras
maiúsculas
strtolower () retorna a string usando letras
minúsculas
substr () retorna uma substring
strpad ()
strrepeat ()
strlen () retorna o tamanho da string
str_replace () substitui uma string por outra
str_pos () retorna a posição de início de uma
string em outra string
121
123. Classe - Exemplo
class Complexo {
private $real;
private $imag;
public function real() {
return $this->real;
}
public function imag() {
return $this->imag;
}
}
123
124. Criação de Objetos
$z = new Complexo;
$parte_real = $z->real();
$parte_imag = $z->imag();
124
125. Bibliografia
Dall'Oglio, P. PHP Programando com
Orientação a Objetos. Novatec. 2007.
NIEDERAUER, J. Web Interativa com
Ajax e PHP. Novatec, 2007.
NIEDERAUER, J. Desenvolvendo Web
Sites com PHP. Novatec, 2007.
Manual do PHP. http://br.php.net/manual
125
132. mysql API
mysql_affected_rows() – retorna o número de linhas afetadas por
uma operação
mysql_fetch_array() – armazena a linha atual em um array
associativo
mysql_fetch_object() – retorna uma linha como um objeto
mysql_fetch_row() – armazena a linha atual em um array
mysql_result() – retorna uma coluna do resultado
mysql_num_rows() – retorna o numero de linhas de uma consulta
mysql_num_fields() – retorna o numero de colunas de uma
consulta
mysql_field_name() – retorna o nome de uma coluna em uma
consulta
132
133. mysql API
int mysql_connect(str host, str
username, str password)
int mysql_select_db(str database [,
int link_identifier])
int mysql_query(str query [, int
link_identifier])
array mysql_fetch_array(int result [,
int result_type])
133
134. mysql API
array mysql_fetch_row(int result)
int mysql_insert_id([int
link_identifier]) --> retorna o
número de linhas após execução de um
comando select
int mysql_affected_rows([int
link_identifier]) --> retorna o nº de
linhas que foram afetados em uma
tabela por comandos update, insert e
delete
134
138. Funções date e time
string date (
string $format
[, int $timestamp ]
)
Formata a data e a hora local
int time ( void )
Retorna o timestamp Unix atual
138
140. Função mktime
int mktime ([ int $hora
[, int $minuto
[, int $second
[, int $mes
[, int $dia
[, int $ano
[, int $is_dst ]]]]]]] )
Obtém um timestamp Unix para uma data
140
143. Datas - MySQL
date_format(date, format)
Exemplo:
SELECT *, date_format(data,'%d/%m/%Y') dt
FROM teste.gasto g
where date_format(data,'%d/%m/%Y')='26/11/2008'
143
144. Exemplo
Seleciona os gastos entre duas datas:
SELECT *, date_format(data,'%d/%m/%Y') dt
FROM teste.gasto g
where date_format(data,'%Y%m%d') between
'20081124' and
'20081125'
144
145. Questões
Qual é a diferença entre os comandos echo
e print ?
echo "1","2"; // ok
print "1","2"; // erro: o comando print não
suporta ',' separando os operadores
Qual é a diferença entre os comandos
require e include ?
145
151. Classes
Classes: são agrupamentos de variáveis e
funções
Objeto: é uma instância de uma classe
151
152. Diferenças entre echo e print
TRUE 1 – qualquer valor não vazio é tratado
como verdadeiro
FALSE 0
echo "1","2"; // ok
print "1","2"; // erro: o comando print não
suporta ',' separando os operadores
152
155. Funções MySQL
mysql_affected_rows — Obtém o número de linhas
atingidas na operação anterior do MySQL
mysql_change_user — Muda o usuário da conexão ativa
mysql_client_encoding — Retorna o nome do conjunto de
caracteres
mysql_close — Fecha a conexão MySQL
mysql_connect — Abre uma conexão com um servidor
MySQL
mysql_create_db — Cria um banco de dados MySQL
mysql_data_seek — Move o ponteiro interno do resultado
mysql_db_name — Obtém dados do resultado(nome de
banco de dados)
mysql_db_query — Envia uma consulta MySQL
mysql_drop_db — Exclui um banco de dados MySQL
155
156. Funções MySQL
mysql_errno — Retorna o valor numérico da mensagem de erro da
operação MySQL anterior
mysql_error — Retorna o texto da mensagem de erro da operação
MySQL anterior
mysql_escape_string — Escapa uma string para usar em uma consulta
MySQL
mysql_fetch_array — Obtém uma linha como uma matriz associativa,
uma matriz numérica, ou ambas
mysql_fetch_assoc — Obtém um linha do resultado como uma matriz
associativa
mysql_fetch_field — Obtém informações sobre uma coluna de um
resultado e retorna como um objeto
mysql_fetch_lengths — Obtém o tamanho de cada saída no resultado
mysql_fetch_object — Obtém o resultado de uma linha como um
objeto
mysql_fetch_row — Obtém uma linha como uma array numérica
mysql_field_flags — Obtém as flags associadas ao campo especificado
em um resultado
156
157. Funções MySQL
mysql_field_len — Retorna o tamanho do campo especificado
mysql_field_name — Obtém o nome do campo especificado em um
resultado
mysql_field_seek — Define o ponteiro do resultado para o índice de
campo especificado
mysql_field_table — Obtém o nome da tabela na qual o campo
especificado esta
mysql_field_type — Obtém o tipo do campo especificado em um
resultado
mysql_free_result — Libera um resultado da memória
mysql_get_client_info — Obtém informações do cliente MySQL
mysql_get_host_info — Obtém informações do servidor MySQL
mysql_get_proto_info — Obtém informações do protocolo MySQL
mysql_get_server_info — Obtém informações do servidor MySQL
157
158. Funções MySQL
mysql_info — Obtém informação sobre a consulta mais recente
mysql_insert_id — Obtém o ID gerado pela operação INSERT anterior
mysql_list_dbs — Lista os bancos de dados disponíveis em um servidor
MySQL
mysql_list_fields — Lista os campos de uma tabela MySQL
mysql_list_processes — Lista os processos MySQL
mysql_list_tables — Lista as tabelas em um banco de dados MySQL
mysql_num_fields — Obtém o numero de campos em um resultado
mysql_num_rows — Obtém o número de linhas em um resultado
mysql_pconnect — Abre uma conexão persistente com um servidor
MySQL
mysql_ping — pinga uma conexão com o servidor ou reconecta se não
houver conexão
158
159. Funções MySQL
mysql_query — Envia uma consulta MySQL
mysql_real_escape_string — Escapa os caracteres especiais
numa string para usar em um comando SQL, levando em
conta o conjunto atual de caracteres.
mysql_result — Retorna dados do resultado
mysql_select_db — Seleciona um banco de dados MySQL
mysql_set_charset — Sets the client character set
mysql_stat — Retorna o status atual do sistema
mysql_tablename — Retorna o nome da tabela do campo
mysql_thread_id — Returna o ID da thread atual
mysql_unbuffered_query — Envia uma query para o
MySQL, sem retornar e colocar em buffer as linhas do
resultado
159
Para versão PHP 4.0, Ze ev Suraki e A nd i Gutmans reescreveram a maior parte do engine PHP, criando-se a ZEND Engine
Hoje PHP é um acrônimo recursivo: Hypertext Preprocessor
Tags de abertura e fechamento: <?php e ?>
Toda variável é identificada pelo sinal '$' antes do nome O tipo da variável não precisa ser explicitamente definido
O tipo da variável não precisa ser explicitamente definido
O uso de aspas duplas permite a interpolação de variáveis, que consiste em incluir o valor de uma variável dentro de outra.
Arrays são mapas ordenados. Um mapa é um tipo que relaciona valores a chaves . Este tipo é otimizado de várias maneiras, então você pode usá-lo como um array real, ou uma lista (vetor), hashtable (que é uma implementação de mapa), dicionário, coleção, pilha, fila e provavelmente mais. Como você pode ter outro array PHP como um valor, você pode facilmente simular árvores.
As matrizes poderão ser indexadas: numericamente pelo nome
Arrays Associativos são também conhecidos como Dictionaries ou Hashes
Array_pop retira e retorna o último elemento do array Array_push insere um ou mais elementos no fim de um array Array_rand retorna um ou mais elementos do array Array_reverse retorna um array com ordem inversa Array_shift retira e retorna o primeiro elemento de um array
Mixed: indica que o parâmetro pode aceitar múltiplos tipos mas não necessariamente todos os tipos. Number: indica que o parâmetro pode ser tanto integer ou float mixed mixed indica que um parâmetro pode aceitar vários (mas não necessariamente todos) os tipos gettype(), por exemplo, aceita todos os tipos do PHP, enquanto str_replace () somente aceita strings e arrays. number number indica que um parâmetro pode ser tanto um integer ou float . callback Algumas funções como call_user_func () ou usort () aceitam callback de funções definidas por usuário como parâmetro. Funções de callback não podem ser somente simples funções, mas também métodos de objetos incluindo métodos estáticos de classes. Uma função PHP é simplesmente passado pelo seu nome como uma string. Você pode passar qualquer função nativa ou definida por usuário. Note que construtores da linguagem como array() , echo() , empty() , eval () , exit() , isset () , list() , print() ou unset() não podem ser chamados usando um callback. A method of an instantiated object is passed as an array containing an object as the element with index 0 and a method name as the element with index 1. Static class methods can also be passed without instantiating an object of that class by passing the class name instead of an object as the element with index 0. Apart from common user-defined function, create_function () can be used to create an anonymous callback function.
Coerção é a conversão de um tipo em outro tipo diferente mediante operação realizada com tipos diferentes. Por exemplo: $a=1; $a = $a + &quot;5&quot;; Nesse exemplo a variável $a é numérica (integer) na primeira atribuição e string na segunda atribuição
typecast = &quot;Conversão de Tipos&quot;
Casts são conhecidos por &quot;Moldagem&quot; em português
É aconselhável o uso de letras maiúsculas para dar nomes a constantes Somente dados escalares ( boolean , integer , float e string ) pode ser colocados em constantes A constant is an identifier (name) for a simple value. As the name suggests, that value cannot change during the execution of the script (except for magic constants , which aren't actually constants). A constant is case-sensitive by default. By convention, constant identifiers are always uppercase.
NomeDescrição __LINE__ A linha atual do script. __FILE__ O caminho completo e nome do arquivo. Se utilizado dentro de um include, o nome do arquivo incluído será retornado. Desde o PHP 4.0.2, __FILE__ sempre contém um caminho absoluto com links simbólicos resolvidos enquanto em versões antigas ela continha um caminho relativo sob certas circunstâncias. __DIR__ O diretório do arquivo. Se usado dentro de um include, o diretório do arquivo incluído é retornado. Isto é equivalente a dirname(__FILE__) . Este nome do diretório não possui barra no final, a não ser que seja o diretório raiz. (Adicionado no PHP 5.3.0.) __FUNCTION__ O nome da função (Acrescentado no PHP 4.3.0). A partir do PHP 5 esta constante retorna o nome da função como ela foi declarada (sensível a maiúsculas e minúsculas). No PHP 4 sempre retorna o nome em minúsculas. __CLASS__ O nome da classe (Acrescentado no PHP 4.3.0). A partir do PHP 5 esta constante retorna o nome da função como ela foi declarada (sensível a maiúsculas e minúsculas). No PHP 4 sempre retorna o nome em minúsculas. __METHOD__ O nome do método de classe. (Acrescentado no PHP 5.0.0). O nome do método é retornado como foi declarado (sensível a maiúsculas e minúsculas). __NAMESPACE__ O nome do atual namespace (sensível a maiúsculas e minúsculas). Esta constante é definida em tempo de compilação (Adicionada no PHP 5.3.0).
&quot;||&quot; tem precedência maior que &quot;or&quot; &quot;&&&quot; tem precedência maior que &quot;and&quot;
Operadores de mesma prioridade são avaliados da esquerda para direita. A precedência dos operadores diminui de cima para baixo
Qualquer script PHP é construído por uma série de instruções. Uma instrução pode ser uma atribuição, uma chamada de função, um 'loop' (laço), uma instrução condicional, ou mesmo uma instrução que não faz nada (um comando vazio). Instruções geralmente terminam com um ponto e vírgula. Além disso, as instruções podem ser agrupados em um grupo de comandos através do encapsulamento de um grupo de comandos com chaves criando-se um bloco Um grupo de comandos (bloco) é uma instrução também.
Avalia o valor de uma expressão para escolher qual bloco de instruções deverá ser executado
Avalia uma expressão e caso esta seja verdadeira é executado o comando enquanto a condição permanecer verdadeira. O laço executará 0 ou mais vezes dependendo o valor inicial
Condição avaliada no final do bloco. Bloco é executado pelo menos uma vez e termina quando a expressão for avaliada falsa.
Condição inicial (valor inicial da variável contadora) Condição de parada (condição de execução. Enquanto for TRUE, o bloco de comandos será executado) atualização (valor a ser incrementado após cada execução)
break cancela a execução do comando for, foreach, while, do-while ou switch atual. break aceita um argumento numérico opcional que diz a ele quantas estruturas aninhadas englobadas devem ser quebradas. continue é usado dentro de estruturas de loops para saltar o resto da iteração do loop atual e continuar a execução na avaliação e no início da próxima iteração.
Uma função pode receber informações quando de sua chamada. Essas informações são os argumentos passados para função. Uma função poderá retornar um valor
Values are returned by using the optional return statement. Any type may be returned, including lists and objects. This causes the function to end its execution immediately and pass control back to the line from which it was called. See return() for more information
Include e Include_once retornam um warning no caso de erro, isto é, caso a página incluida não possa ser lida, porém a página continua em processamento Require e require_once retornam um erro fatal em caso de erro na inclusão da página
Quando um formulário é submetido para um script PHP, qualquer variável do formulário será automaticamente disponível para o script
htmlspecialchars(<string>); Esta função é idêntica a htmlspecialchars() em toda forma, exceto que com htmlentities() , todos caracteres que tem entidade HTML equivalente são convertidos para estas entidades. Se você está querendo decodificar (o inverso), você pode usar html_entity_decode(). stripslashes(<string>); urlencode(); Retorna uma string em que todos os caracteres não-alfanuméricos com exceção de -_. são substituídos com um sinal de porcento ( % ) seguido por dois dígitos hexadecimais e espaços codificados como um sinal de ( + ). É codificada do mesmo jeito que dados vindos de um formulário WWW é codificado, isto é, da mesma maneira que application/x-www-form-urlencoded urldecode(); Decodifica qualquer %## codificado na string.
Várias variáveis pré-definidas no PHP são &quot;superglobais&quot;, que significa que elas estão disponível em todos escopos para todo o script. Não há necessidade de fazer global $variable; para acessá-lo dentro de funções ou métodos. Veja mais informações em: http://www.php.net/manual/pt_BR/language.variables.superglobals.php $GLOBALS Contains a reference to every variable which is currently available within the global scope of the script. The keys of this array are the names of the global variables. $GLOBALS has existed since PHP 3. $_SERVER Variables set by the web server or otherwise directly related to the execution environment of the current script. Analogous to the old $HTTP_SERVER_VARS array (which is still available, but deprecated). $_GET Variáveis providas pelo script via URL query string. Análogo ao array $HTTP_GET_VARS array (which is still available, but deprecated). $_POST Variáveis providas pelo script via HTTP POST. Análogo array $HTTP_POST_VARS (which is still available, but deprecated). $_COOKIE Variables provided to the script via HTTP cookies. Analogous to the old $HTTP_COOKIE_VARS array (which is still available, but deprecated).
$_FILES Variables provided to the script via HTTP post file uploads. Analogous to the old $HTTP_POST_FILES array (which is still available, but deprecated). See POST method uploads for more information. $_ENV Variables provided to the script via the environment. Analogous to the old $HTTP_ENV_VARS array (which is still available, but deprecated). $_REQUEST Variables provided to the script via the GET, POST, and COOKIE input mechanisms, and which therefore cannot be trusted. The presence and order of variable inclusion in this array is defined according to the PHP variables_order configuration directive. This array has no direct analogue in versions of PHP prior to 4.1.0. See also import_request_variables() . Caution: Since PHP 4.3.0, FILE information from $_FILES does not exist in $_REQUEST. Note: When running on the command line , this will not include the argv and argc entries; these are present in the $_SERVER array. Um array associativo que por padrão contém informações de $_GET , $_POST e $_COOKIE . $_SESSION Variables which are currently registered to a script's session. Analogous to the old $HTTP_SESSION_VARS array (which is still available, but deprecated). See the Session handling functions section for more information.
A função session_start() deve vir antes de qualquer saída HTML.
http://docs.php.net/manual/pt_BR/book.mysql.php
Veja mais funções em: http://www.php.net/manual/pt_BR/ref.datetime.php