Aplicativos em PHP/Trabalhando em PHP com/Includes
Includes
[editar | editar código]Inclue e avalia o conteúdo do arquivo.
Require
Também inclue e avalia o conteúdo do arquivo incluído.
A diferença entre ambos é que o include ao encontrar um erro, lança um warning apenas, enquanto que o require lança um Fatal Error, que pára o processamento.
Uso do require: para códigos que requerem maior segurança.
Include_Once e Require_Once
São semelhantes ao include e require, sendo que estes incluem um arquivo somente uma vez.
Mostrando uso do require_once:
echo.php
<?php echo "Hello"; ?>
teste.php
<?php
require('echo.php');
require_once('echo.php');
?>
Chamar no navegador o script teste.php
saída: "Hello".
Agora teste2.php:
<?php
require('echo.php');
require('echo.php');
?>
Executar teste2.php
saída: "HelloHello".
Agora teste3.php:
<?php
require_once('echo.php');
require('echo.php');
?>
Executar teste3.php
saída: "HelloHello".
Ou seja, ao encontrar require_once, ele verifica se o arquivo já foi incluído, e somente o incluirá novamente se ele ainda não tiver sido incluído.
<?php // Isto está errado e não funcionará como desejado if ($condition) include $arquivo; else include $outro;
// E este está correto
if ($condition) {
include $arquivo;
} else {
include $outro;
}
?>
<?php
$path="/full/path/to/script/";
if (getdomain($path) == 'yourdomain'){
include($path.'somefile.php');
}
?>
"variables.php"
<?php
$includer = basename($_SERVER['SCRIPT_NAME']);
switch ($includer) {
case 'a.php':
$this_variable = 'included by script a.php';
break;
case 'b.php':
$this_variable = 'included by script b.php';
break;
default:
$this_variable = 'included by unkown script';
}
echo $this_variable;
?>
Test with 3 different files "a.php", "b.php", "c.php", all with the same content:
<?php include 'variables.php'; ?>