Programação para Internet I Aula 6 PHP: Include, Require, Variáveis de ambiente Prof. Teresinha Letícia da Silva leticiasfw@yahoo.com.br
Inclusão de arquivos com Include e Require no PHP Uma técnica muito comum no desenvolvimento em PHP é usar as funções include() e require() para modularizar o layout de sites, guardando partes de um site em arquivos diferentes. Dessa forma se algo precisar ser mudado só será necessário mudar em um lugar. Essas funções também podem ser usadas para o reaproveitamento de código.
Inclusão de arquivos com Include e Require no PHP O PHP tem duas formas normalmente usadas para incluir o conteúdo de um outro script PHP, como uma biblioteca de funções ou algo similar, que são:?php include("arquivo.php"); require("arquivo.php");?> Que também podem ser escritas assim: <?php include "arquivo.php"; require "arquivo.php";?>
Inclusão de arquivos com Include e Require no PHP Os dois tem quase a mesma função - um (include) inclui o conteúdo do arquivo especificado (seja um script PHP ou um arquivo HTML normal) e o outro (require) requer que o arquivo especificado seja incluído. Se esse arquivo por algum motivo não puder ser incluído, um erro aparecerá na página.
Exemplo - Include Permite a inclusão de outros arquivos php dentro do script que está sendo executado. Pode-se criar uma função que imprime a data atual e pode-se reusá-lo sem precisar rescrever o código cada vez que for necesário. No exemplo a seguir, pode-se chamar o primeiro script de data.php e o próximo script o inclui através do comando include.
Exemplo - Include <?php $meses = array(1 => "Janeiro",2 => "Fevereiro",3 => "Março",4 => "Abril", 5 => "Maio",6 => "Junho",7 => "Julho",8 => "Agosto",9 => "Setembro", 10 => "Outubro",11 => "Novembro",12 => "Dezembro"); $hoje = getdate(); $dia = $hoje["mday"]; $mes = $hoje["mon"]; $nomemes = $meses[$mes]; $ano = $hoje["year"]; echo "Olá. Hoje é dia $dia de $nomemes de $ano. ;?> Salvar como data.php
Exemplo - Include <?php include( data.php"); echo <br> com a inclusão acima o cabeçalho mostra a data de hoje ;?>
Exercicio Criando um menu com php e css Utilizando a função include, vamos criar uma estrutura de menu com php e css que poderá ser reaproveitada em diferentes páginas. Desta forma, quando precisamos alterar algum item do menu só precisamos alterar em um arquivo.
Exercicio Criando um menu com php e css 1 - Crie um arquivo que será o nosso menu.php. <div class="menu"> <br><a href="pagina1.html"> Página 1 </a> <br><a href="pagina2.html"> Página 2 </a> <br><a href="pagina3.html"> Página 3 </a> <br><a href="pagina4.html"> Página 4 </a> </div>
Exercicio Criando um menu com php e css 2 - Crie um arquivo que será a página principal chamado principal.php. <HTML> <HEAD> <TITLE>Documento PHP</TITLE> <link rel="stylesheet" type="text/css" href="estilo.css" /> </HEAD> <BODY> <div class="topo"> Banner </div> <?php include "menu.php";?> <div class="centro"> Texto central </div> </BODY> </HTML>
Exercicio Criando um menu com php e css 3 Monte o arquivo css topo { background-color: #3333FF; float: left; height: 200px; width: 800px; }.menu { float: left; height: 300px; width: 200px; background-color: #CCCCCC; }.centro { float: left; height: 300px; width: 500px; }.menu a { text-decoration: none; color: #FF0000; }.menu a:hover { color: #0000FF; background-color: #FFFFFF; display: block; }
Exercício Crie dois arquivos novos: cabecalho.php rodape.php E monte um cabeçalho com o nome e a logomarca da empresa, e o rodapé com as informações (endereço, telefone, e-mail, etc) Inclua os arquivos na página principal.
Variáveis de ambiente e PHP Muito utilizadas no PHP, as variáveis de ambiente como o nome diz, são variáveis do ambiente do servidor web. Através do uso destas informações, pode se descobrir qual o browser que o cliente utiliza, IP para votações e chats, entre muitas outras funcionalidades.
Variáveis de ambiente e PHP Para se obter o valor de uma variável de ambiente a função getenv é utilizada no php: getenv( nome_da_variável );
Variáveis de ambiente e PHP Um exemplo que é muito utilizado é a verificação de tipo de método de envio de dados de um formulário. Por exemplo, se meu formulário utiliza apenas o método post e não gostaria que alguém utilizasse get, poderíamos criar o código abaixo aproveitando as variáveis de ambiente: if(getenv( REQUEST_METHOD ) == GET ) echo O método utilizado é GET! ; Agora já conhecemos um deles o REQUEST_METHOD que mostra o envio de dados utilizado.
Variáveis de ambiente e PHP Principais variáveis: CONTENT_LENGHT Tamanho dos dados recebidos pelo servidor ( bytes ) CONTENT_TYPE Tipo MIME dos dados enviados HTTP_ACCEPT Uma lista dos tipos MIME aceitos pelo cliente HTTP_USER_AGENT Nome e versão do browser utilizado no cliente PATH_INFO Caminho acessado pelo cliente para alguns scripts. QUERY_STRING Armazena informações passadas através da URL após o? REQUEST_METHOD Método utilizado para envio ( Post / Get ) REMOTE_HOST Nome do host da origem da requisição REMOTE_ADDR IP do usuário REMOTE_USER Nome do usuário ( Se o servidor permitir autenticação) SERVER_SOFTWARE Servidor e Software utilizados SERVER_NAME Nome do servidor ou IP SERVER_PROTOCOL Nome e versão do protocolo utilizado SERVER_PORT Número da porta utilizada na requisição SCRIPT_NAME Caminho para o script que está sendo executado
Variáveis de ambiente e PHP Exemplo: <?php echo "seu IP é ". getenv("remote_addr"); echo "seu browser é ". getenv("http_user_agent");?>
Exercício Podemos usar as variáveis de ambiente em várias situações. Por exemplo, podemos ter folhas de estilo diferentes para browsers diferentes:
Exercício <HTML> <HEAD> <TITLE>Documento PHP</TITLE> <?php $browser=getenv("http_user_agent"); if (strpos($browser,"msie")) { echo "<link rel='stylesheet' type='text/css' href='estilo.css' />"; } else { echo "<link rel='stylesheet' type='text/css' href='estilo2.css' />"; }?> </HEAD> <BODY>... </HTML>
Função de email Usando a função mail(): bool mail ( string $to, string $subject, string $message [, string $additional_headers] ) Parâmetros: to: Receptor, ou receptores do email. O formato desta string precisa estar de acordo com» RFC 2822. Alguns exemplos: user@example.com user@example.com, anotheruser@example.com User <user@example.com> User <user@example.com>, Another User <anotheruser@example.com> subject: Assunto do email a ser enviado. message: Mensagem a ser enviada. additional_headers (opcional): String a ser inserida no final do cabeçalho do email. Esta é normalmente usada para adicionar cabeçalhos extras (From, Cc, e Bcc). Múltiplos cabeçalhos extra devem ser separados com um CRLF (\r\n).
Usando a função mail(): Valor Retornado Retorna TRUE se o email foi aceito com sucesso pelo entregado, FALSE caso contrário. EXEMPLO: <?php $para = 'seuemail@dominio.com.br'; $assunto = 'digite o assunto'; $mensagem = 'O texto do email'; $cabecalho = 'From: Quem enviou <emaildestinatario@dominio.com.br>'; mail($para, $assunto, $mensagem, $cabecalho);?>
Exercícios