O documento discute diferentes maneiras de importar arquivos PHP em outros arquivos PHP, incluindo as funções include(), require(), include_once() e require_once(). Também discute o uso de query strings para criar páginas dinâmicas com o mesmo layout. Finalmente, fornece um exemplo prático de como estruturar um site simples usando essas técnicas.
3. A importação
O PHP disponibiliza 4 funções para importação e cada
uma desempenha uma tarefa especifica, logo, devemos
conhecer todas as maneiras disponíveis de importação.
Podemos importar um arquivo PHP através da
função include() ou então, require(). Cada uma dessas
2 funções, possui uma função auxiliar que evita a
importação de um arquivo que já tenha sido importado
anteriormente.
4. A importação
• O problema em importar um arquivo que já está
importado, é que as variáveis contidas no escopo
desse arquivo serão resetadas, logo, todos os valores
que tivermos em variáveis que estão definidas em
outro arquivo serão perdidos. Isso é somente um dos
problemas, podemos encontrar outros também.
• Então, uma boa prática é a utilização das funções
"_once()", pois dessa maneira evitamos a importação
de algo que já está carregado.
6. A função include()
• Podemos inserir o conteúdo de um arquivo
PHP em outro arquivo PHP antes que o
servidor os execute;
• Através desta função, podemos criar arquivos
PHP que podem ser reusados por outros
arquivos, evitando repetição de codificação;
• Desta forma, podemos criar arquivos PHP que
contém funções ou trechos de código que se
repetem com frequência;
7. A função include()
• A função include() obtém todo o conteúdo de
um arquivo específico e o inclui no arquivo
que invocou a função;
• Se um erro ocorrer (ex.: o arquivo indicado na
função não existir), tal função irá gerar uma
mensagem de advertência, mas o script
continuará sua execução;
8. A função include()
• Ex. - Script PHP que calcula a soma de dois números
(funcoes.php):
<?php
function soma($num1, $num2)
{
$resultado = $num1 + $num2;
return $resultado;
}
?>
9. A função include()
• Ex. - Arquivo PHP que invoca o arquivo
funcoes.php e calcula a soma de dois números
(calcula.php):
<?php
include(“funcoes.php”);
soma(4,7);
?>
10. A função include()
• Já na função “include_once()” temos o
funcionamento igual ao da
função include(), porém, o arquivo só será
importado caso o mesmo ainda não tenha
sido, evitando redundâncias de variáveis e
funções, por exemplo.
12. A função require()
• A função require importa arquivos, porém,
caso o mesmo não seja encontrado, será
levantado uma exceção e a execução é
finalizada. Essa é uma maneira de
interrompermos a execução dos scripts
caso alguma anomalia ocorra.
13. A função require()
• Na função require_once o funcionamento
é igual ao da função require, porém, um
arquivo só será importado caso o mesmo
ainda não tenha sido.
15. Query_String
• Para criarmos páginas em PHP de
maneira que possamos aproveitar o
mesmo layout HTML e seguindo a mesma
estrutura em todas as páginas, podemos
criar acesso a elas através de variáveis
passadas pelo método _GET.
16. A função require()
• Por exemplo, você não precisa criar vários
arquivos de um site, todos contendo o
topo e o menu. Afinal, e se você quiser
alterar uma opção no menu ou no
topo/rodapé, terá que entrar em todos os
sites para fazê-lo?
17. A função require()
• Por isso, podemos criar um script que
receba um parâmetro que identifique para
onde deve ir caso clique em um
determinado link.
18. Exemplo 1:
• Vamos criar um mini-projeto chamado MeuSite.com.
• Crie uma pasta chamada MeuSite dentro da pasta
htdocs do Xampp.
• Depois, crie 5 arquivos:
– index.php
– quemsomos.php
– clientes.php
– faleconosco.php
– principal.php
19. Exercício:
• Vamos criar a index.php para receber a estrutura de
cada página dentro de si. Ela terá o menu, topo e rodapé do
site.
• As demais páginas terão apenas o seu conteúdo.
• Em fale conosco, vamos criar um formulário que envie por e-
mail a mensagem do visitante.
• Adicional: a página Index.php pode conter apenas Includes,
ou seja, crie arquivos como topo.php, menu.php, rodape.php
e apenas inclua através do include_once() dentro do arquivo
index.