Gostou do nosso conteúdo? Te ajudou?
Nos ajude também! Faça um PIX, de qualquer valor:
programacao.progressiva@gmail.com

Incluindo Arquivos Externos de PHP: include, include_once e require_once

Neste tutorial de curso de PHP, vamos aprender como incluir outros arquivos PHP em nosso script, usando a declaração include, include_once e requirce_once.

Recomendamos: Estudar pela apostila de PHP

Incluir arquivos: include

Fizemos alguns scripts com uma ou duas funções, em nossos tutoriais passados.

Quando você for montar seu sistema web ou criar um jogo, por exemplo, vai facilmente criar dezenas ou centenas de funções.

Imagine só amontoar todas essas funções num bloco <?php ?> ?
Tudo num arquivo .php?
Não dá! Ia ficar muito desorganizado.

Existe então a possibilidade de colocar todas funções em um arquivo separado.
Por exemplo, crie um arquivo chamado "matematica.php"

E insira nele as seguintes funções:
<?php
 function soma($a, $b)
 {
  return $a + $b;
 }

 function sub($a, $b)
 {
  return $a - $b;
 }

 function multiplicacao($a, $b)
 {
  return $a * $b;
 }

 function divisao($a, $b)
 {
  return $a / $b;
 }
?>
Agora na sua home.php faça:
<html>
 <head>
  <title>Apostila PHP Progressivo</title>
 </head>
 <body>
 <form action="" method="get">
  Numero 1: <input type="number" name="num1" /><br />
  Numero 2: <input type="number" name="num2" /><br />
  <input type="submit" name="submit" value="Calcular" />
 </form> 
 <?php
  include "matematica.php";
  $a = $_GET['num1'];
  $b = $_GET['num2'];
  
  echo "Soma: ".soma($a,$b)."<br />";
  echo "Subtracação: ".sub($a,$b)."<br />";
  echo "Multiplicação: ".multiplicacao($a,$b)."<br />";
  echo "Divisao: ".divisao($a,$b)."<br />";
 ?>
 </body>
</html>
E veja o resultado! Aparece a soma, subtração, multiplicação e divisão!
Veja como nosso código ficou mais organizado.

Imagine agora que você vai criar um jogo.
Talvez as funções de cenários fiquem melhor no "cenario.php"
Os sons do game devem ficar em "sons.php"
As características dos personagens em "personagens.php"

Isso se o arquivo estiver no mesmo diretório de 'home.php'
Se tiver na pasta 'level2112', você deve dar: include "level2112/level.php"

Você pode incluir inclusive arquivos PHP externos de outros sites.

Include, include_onde e require_once

Imagine que tenhamos o arquivo A.php e nele damos include no B.php e no C.php
No B.php damos include no C.php

Note que aí teríamos um problema: o C.php foi incluído duas vezes.
Na primeira quando incluímos o B.php (que já inclui o C) e quando o B novamente inclui o C.php

Isso vai gerar uma série de erros, pois vão existir variáveis e funções duplicadas.
Para evitar isso, ao invés de include, use:
include_once

Assim, se tentar incluir um arquivo que já foi incluso, ele será sumariamente desconsiderado.

Mas ainda assim temos um problema.
include e include_once apenas tentam incluir um arquivo, se não conseguem, bola pra frente, o script segue e você pode ter diversos erros achando que incluiu um arquivo quando não foi incluso.

Se for absolutamente imprescindível (geralmente é), não inclusa e sim requeira.
Use: require_once

Para não ter dúvidas, use sempre require_once.