English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
Neste tutorial, você aprenderá como incluir e avaliar arquivos em PHP.
Os comandos include() e require() permitem incluir o código de um arquivo PHP em outro. Incluir arquivos gera o mesmo resultado que copiar o script de um arquivo específico e colá-lo no local de chamada.
Você pode economizar muito tempo e trabalhar com arquivos incluídos.-Basta armazenar o bloco de código em arquivos separados e usá-los com as instruções include() e require() em qualquer local necessário, sem precisar digitar o bloco inteiro várias vezes. Um exemplo típico é incluir arquivos de cabeçalho, rodapé e menu em todas as páginas do site.
A sintaxe básica das instruções include() e require() pode ser dada da seguinte forma:
include("path/to/filename"); ou include "path/to/filename"; require("path/to/filename"); ou require "path/to/filename";
Dica:Como as instruções print e echo, você pode omitir os parênteses ao usar as instruções include e require, conforme mencionado acima.
A seguir, exemplos mostram como incluir código de cabeçalho, rodapé e menu comuns armazenados em arquivos separados "header.php", "footer.php" e "menu.php" em todas as páginas do site. Com essa técnica, é necessário apenas alterar um arquivo para atualizar imediatamente todas as páginas do site, economizando muita repetição de trabalho.
<!DOCTYPE html> <html> <head> <title>Tutorial Básico</title> </head> <?php include "header.php"; ?> <?php include "menu.php"; ?> <h1>Bem-vindo ao nosso site (pt.oldtoolbag.com)!</h1> <p>Aqui, você encontrará muitas informações úteis.</p> <?php include "footer.php"; ?> </html>
Você pode estar pensando, se podemos usar a instrução include() para incluir arquivos, por que precisamos de require(). Normalmente, a execução da instrução require() é semelhante à da include().
A única diferença é que — a instrução include() gera apenas avisos de PHP, mas permite que o script continue a executar, enquanto a instrução require() gera um erro fatal e para a execução do script .
<?php require "my_variables.php"; ?> <?php require "my_functions.php"; ?> <!DOCTYPE html> <html> <head> <title><?php displayTitle($home_page); ?></title> </head> <?php include "header.php"; ?> <?php include "menu.php"; ?> <h1>Bem-vindo ao nosso site (pt.oldtoolbag.com)!</h1> <p>Aqui, você encontrará muitas informações úteis.</p> <?php include "footer.php"; ?> </html>
Atenção: Se você incluir arquivos de biblioteca ou arquivos que contêm funções e variáveis de configuração necessárias para a execução do aplicativo (comoArquivo de configuração do banco de dados),é recomendável usar a instrução require().
Se você acidentalmente usar várias vezes as instruções include ou require para incluir o mesmo arquivo (comumenteFunçãoouClasseArquivo) pode causar conflitos. Para evitar isso, o PHP fornece as instruções include_once e require_once. Essas instruções funcionam da mesma forma que as instruções include e require, com uma exceção:
Mesmo que o arquivo seja incluído novamente, as instruções include_once e require_once incluirão o arquivo apenas uma vez, o que significa que, se o arquivo já foi incluído na instrução anterior, ele não será incluído novamente. Para entender melhor como isso funciona, vamos ver um exemplo. Suponha que tenhamos um arquivo "my_functions.php", cujo código é o seguinte:
<?php function multiplySelf($var){ $var *= $var; //Multiplicar o próprio valor da variável echo $var; } ?>
Este é um script PHP que contém o arquivo "my_functions.php".
<?php //Incluir arquivo require "my_functions.php"; // Chamar função multiplySelf(2); // Saída: 4 echo "<br>"; //Incluir o arquivo novamente require "my_functions.php"; // Chamar função multiplySelf(5); // Não executa ?>
Quando você executar o script acima, você verá uma mensagem de erro semelhante à seguinte:“Erro fatal: Não é possível redeclarar multiplySelf()”A razão pela qual isso acontece é que 'my_functions.php' foi incluído duas vezes, o que significa que a função multiplySelf() foi definida duas vezes, causando o PHP a parar a execução do script e gerar um erro fatal. Agora, reescreva o exemplo acima usando require_once.
<?php // Incluindo arquivo require_once "my_functions.php"; // Chamar função multiplySelf(2); // Saída: 4 echo "<br>"; //Incluir o arquivo novamente require_once "my_functions.php"; // Chamar função multiplySelf(5); // Saída: 25 ?>
Como você vê, ao usar require_once em vez de require, o script funciona conforme esperado.