AplicativosemPHP23072007
644 pág.

AplicativosemPHP23072007


DisciplinaDesenvolvimento de Aplicações para Web I18 materiais84 seguidores
Pré-visualização50 páginas
php.ini
register_globals = off (por questões de segurança)
No Xampp o php.ini traz register_globals ativo por default.
GD, pgsql, mysql e outras extensões que queira usar deverá descomentar no php.ini, seção 
Extensions.
httpd.conf
Para poder alterar o diretório web default deverá mudar dois parâmetros no arquivo httpd.conf do 
Apache:
DocumentRoot "/opt/lampp/htdocs"
<Directory &quot;/opt/lampp/htdocs&quot;>
Os diretórios acima são para a edição for Linux do Xampp. Para o Windows observe que o Apache 
utiliza, não barras, que são utilizadas neste SO, mas sim contra-barras e as vezes contra-barras 
duplas.
No caso queremos mudar o diretório default para /home/www, então alteramos o httpd.conf para 
que fique assim:
DocumentRoot &quot;/home/www&quot;
WikiBooks, Democratizando o Conhecimento
http://pt.wikibooks.org/wiki/Aplicativos_em_PHP \u2013 Página 167/644
<Directory &quot;/home/www&quot;>
No Windows fica assim:
DocumentRoot &quot;c:/Arquivos de Programas/Xampp/htdocs&quot;
<Directory &quot;<c:/Arquivos de Programas/Xampp/htdocs&quot;>
Que devem ficar assim:
DocumentRoot &quot;c:/1www&quot;
<Directory &quot;<c:/1www&quot;>
Configuração das extensões suportadas. Altere a linha:
DirectoryIndex index.html index.html.var index.php index.php3 index.php4
Veja que acima configurou-se para perceber inclusive arquivos com as extensões .php3 e .php4.
Caso não fossem incluídas, arquivos com extensão .php3 e .php4 não poderiam ser abertos neste 
servidor.
- Referência da Linguagem
Separador de Instruções
O ponto e vírgula ; é o separador de instruções em PHP (como em Perl e em C).
Sempre que uma instrução terminar devemos digitar um ponto e vírgula (echo &quot;ola&quot;; ).
Comentários
Em PHP podemos usar 3 tipos de comentários (/* ... */, // e #) mas devemos utilizar somente os dois 
primeiros e o primeiro é o mais eficiente, que é o /* ... */, que veio do C, já que # está em processo 
de obsolescência. Ou seja, devemos usar // ou /* ... */, de preferência este último.
- Tipos de Dados
O PHP suporta os oito tipos primitivos:
- boolean, integer, float e string (básicos) - array e object (compostos) - resource e NULL 
(especiais)
float é sinônimo de double em PHP.
WikiBooks, Democratizando o Conhecimento
http://pt.wikibooks.org/wiki/Aplicativos_em_PHP \u2013 Página 168/644
Tipo de Variável
O tipo de uma variável em PHP não é controlado pelo programador, depende do valor da variável e 
é avaliado em tempo de execução. Não é permitido ao programador declarar o tipo de variáveis.
Funções que Retornal o Tipo
gettype
todas as is_type
Casting
(tipo) variavel;
Boleanos
Pode ser TRUE ou FALSE (case-insensitive)
Exemplos
<?php
echo gettype((bool) &quot;&quot;).&quot;<br>&quot;; // bool(false)
echo gettype((bool) 1).&quot;<br>&quot;; // bool(true)
echo gettype((bool) -2).&quot;<br>&quot;; // bool(true)
echo gettype((bool) &quot;foo&quot;).&quot;<br>&quot;; // bool(true)
echo gettype((bool) 2.3e5).&quot;<br>&quot;; // bool(true)
echo gettype((bool) array(12)).&quot;<br>&quot;; // bool(true)
echo gettype((bool) array()).&quot;<br>&quot;; // bool(false)
?>
Convertendo Explicitamente para Boleano
Usa-se o modificador (bool) ou (boolean).
Valores que são considerados FALSE
FALSE, 0, 0.0, &quot;0&quot;, &quot;&quot;, array vazio, objeto sem membros e NULL (e variáveis indefinidas).
Os demais são TRUE
WikiBooks, Democratizando o Conhecimento
http://pt.wikibooks.org/wiki/Aplicativos_em_PHP \u2013 Página 169/644
Inteiros
Em PHP, inteiro é um número do conjunto matemático dos Inteiros (Z), que contem os negativos, o 
zero e os positivos.
Em PHP os inteiros podem ser decimais, octais ou hexadecimais.
octal - precedido por 0.
hexadecimal - precedido por 0x.
Exemplos
<?php
$a =1234;
echo $a.&quot;<br>&quot;; // número decimal
$a =-123;
echo $a.&quot;<br>&quot;; // um número negativo
$a =0123;
echo $a.&quot;<br>&quot;; // número octal (equivalente a 83 em decimal)
$a =0x1A;
echo $a.&quot;<br>&quot;; // número hexadecimal (equivalente a 26 em decimal)
?>
O tamanho dos inteiros depende da plataforma e é de 32 bits com sinal. O PHP não suporta inteiros 
sem sinal.
Overflow - caso seja especificado um número inteiro além dos limites, será interpretado como 
flutuante.
Convertendo Explicitamente para Inteiro
Usar o modificador (int) ou (integer).
Ou com a função intval().
De boleanos - FALSE será retornado como 0 e TRUE como 1.
De flutuantes - ao converter para inteiros serão truncados
De strings - A string será avaliada como um ponto flutuante se contiver qualquer um dos caracteres 
'.', 'e', ou 'E'. Em outros casos, ela será avaliada como um inteiro.
De outros tipos - não têm precisão, exatidão, portanto é melhor evitar.
Alerta
echo (int) ((0.1 + 0.7 ) * 10); // Exibirá 7 ao invés do esperado 8
Ponto Flutuante
É o float, double ou real.
WikiBooks, Democratizando o Conhecimento
http://pt.wikibooks.org/wiki/Aplicativos_em_PHP \u2013 Página 170/644
Exemplos
1.234 ou 1.2e3 ou 7E-10
<?php
$a = 1.234;
echo $a.&quot;<br>&quot;;
$b = 1.2e3;
echo $b.&quot;<br>&quot;;
$c = 7E-4;
echo $c;
?> 
O tamanho de um float depende também da plataforma e é de 64bits no formato IEEE(*).
Nunca compare números em ponto flutuante em igualdades, sob pena de cometer erros.
\u2022 - (Wikipedia - http://pt.wikipedia.org )O Instituto de Engenheiros Eletricistas e Eletrônicos 
ou IEEE (pronuncia-se I-3-E ) é uma organização profissional sem fins lucrativos, fundada 
nos Estados Unidos. É a maior (em número de sócios) organização profissional do mundo. O 
IEEE foi formado em 1963 pela fusão do Instituto de Engenheiros de Rádio (IRA) com o 
Instituto Americano de Engenheiros Elétricistas (AIEE). O IEEE tem filiais em muitas 
partes do mundo, sendo seus sócios engenheiros eletricistas, engenheiros da computação, 
cientistas da computação, profissionais de telecomunicações etc. Sua meta é promover 
conhecimento no campo da engenharia elétrica, eletrônica e computação. Um de seus papéis 
mais importantes é o estabelecimento de padrões para formatos de computadores e 
dispositivos. 
Strings
Em PHP um caractere ocupa um byte. Até a versão 5 o PHP não tem suporte a UNICODE, mas está 
previsto este suporte para a próxima versão (Fonte: Wikipedia - http://www.wikipedia.org).
Não há limite para o tamanho de uma string em PHP.
Especificando Strings
- apóstrofos (chamados de aspas simples ' )
- aspas (chamadas de aspas duplas &quot; )
- heredoc (<<<)
Exemplos
<?php
echo 'isto é uma string comum';
echo 'Você pode incluir novas linhas em strings,
dessa maneira que estará
tudo bem';
// Imprime: Arnold disse uma vez: &quot;I\'ll be back&quot;
WikiBooks, Democratizando o Conhecimento
http://pt.wikibooks.org/wiki/Aplicativos_em_PHP \u2013 Página 171/644
echo 'Arnold once said: &quot;I\'ll be back&quot;';
// Imprime: Você tem certeza em apagar C:\*.*?
echo 'Você tem certeza em apagar C:\\*.*?';
// Imprime: Você tem certeza em apagar C:\*.*?
echo 'Você tem certeza em apagar C:\*.*?';
// Imprime: Isto não será substituido: \n uma nova linha
echo 'Isto não será substituido: \n uma nova linha';
// Imprime: Variaveis $também não $expandem
echo 'Variaveis $também não $expandem';
echo '<br>------------<br>';
$str = <<<EOD
Exemplo de uma string
distribuída em várias linhas
utilizando a sintaxe heredoc.
EOD;
/* Exemplo mais complexo, com variáveis */
class foo
{
 var $foo;
 var $bar;
 function foo()
 {
 $this->foo = 'Foo';
 $this->bar = array('Bar1', 'Bar2', 'Bar3');
 }
}
$foo = new foo();
$name = 'Meu nome';
echo <<<EOT
Meu nome é &quot;$name&quot;. Eu estou imprimindo $foo->foo.
Agora, eu estou imprimindo {$foo->bar[1]}.
Isto deve imprimir um 'A' maiúsculo: \x41
EOT;
?>
Nulos em PHP
NULL
O valor especial NULL representa que a variável não tem valor. NULL é o único valor possível do 
tipo NULL.
A variável é considerada NULL se:
\u2022 ela foi assimilada com a constante NULL. 
WikiBooks, Democratizando o Conhecimento
http://pt.wikibooks.org/wiki/Aplicativos_em_PHP