Você está na página 1de 15

Include e Require

12 Include e Require

Um include e um require tm funces semelhantes, mas diferem num ponto fundamental, a condio em que cada um executado.
O require sempre executado, mesmo que a linha que o contm nunca chegue a ser. O include, por sua vez, s executado quando a linha executada.

Include e Require
12.1 Include e Require (cont)

O comportamento relacionado com os erros tambm diferente. No caso do require, a inexistncia do ficheiro a importar provoca um erro fatal e o fim da execuo do script, enquanto que o include, resulta s num warning.
Uma variante destas instruces o include_once() e o require_once(). Pelo nome podemos deduzir, que os mesmos s so executados uma vez, mesmo que o recurso seja chamado em vrias partes do cdigo.

Include e Require
12.2 Include e Require (cont)

Ficheiroaincluir.php
<?php echo 'ficheiro includo com sucesso!'; ?>

Include e Require
12.3 Include e Require (cont) Exemplo include.php <?php $incluificheiro = 'SIM'; if ($incluificheiro == 'SIM') { include_once 'ficheiroaincluir.php'; } ?>

Include e Require
12.4 Include e Require (cont)

Exemplo require.php <?php $incluificheiro = 'SIM'; if ($incluificheiro == 'SIM') { require_once 'ficheiroaincluir.php'; } ?>

Include e Require
12.5 Anatomia de um site com includes (cont) Neste ponto vamos criar um pequeno site, para demonstrar como podemos compor as vrias partes com includes. Este site vai ser composto por 7 ficheiros:

index.php: O ficheiro principal homepage.php: O ficheiro com o conteudo da homepage pagina1.php a pagina4.php: ficheiros com o contedo de cada pgina respectiva site.css: o ficheiro com as css do site (fornecido).

Include e Require
12.6 Anatomia de um site com includes (cont )

Passo 1: Criar uma pasta dentro do nosso projecto chamada website. Passo 2: Criar cada um dos ficheiros (criar os ficheiros vazios).

Include e Require
12.7 Anatomia de um site com includes (cont) Passo 4: Criar o corpo do site em HTML com o seguinte cdigo: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1strict.dtd"> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />

Include e Require
12.8 Anatomia de um site com includes (cont) <title>O meu primeiro template</title> <link href="site.css" media="screen" rel="stylesheet" type="text/css" /> </head> <body> <div class="titulo"> <h1>O meu Primeiro site com includes</h1> </div> <div class="conteudo">

Include e Require
12.9 Anatomia de um site com includes (cont) <?php if(isset($_GET['pagina'])) { include_once($_GET['pagina'].'.php'); } else { include_once('homepage.php'); } ?>

Include e Require
12.10 Anatomia de um site com includes (cont) </div> <div class="menulateral"> <ul class="menu"> <li>Includes</li> <li><a href="<?php echo $_SERVER['PHP_SELF'];?>?pagina=homepage">Home</ a></li> <li><a href="<?php echo $_SERVER['PHP_SELF'];?>?pagina=pagina1">Pgina 1</a></li>

Include e Require
12.11 Anatomia de um site com includes (cont) <li><a href="<?php echo $_SERVER['PHP_SELF'];?>?pagina=pagina2">Pgina 2</a></li> <li><a href="<?php echo $_SERVER['PHP_SELF'];?>?pagina=pagina3">Pgina 3</a></li> <li><a href="<?php echo $_SERVER['PHP_SELF'];?>?pagina=pagina4">Pgina 4</a></li> <li>&nbsp;</li>

Include e Require
12.12 Anatomia de um site com includes (cont)

</ul> <div class="rodape"> <p>ISLA Gaia - Formao em PHP</p> </div> </div> </body> </html>

Include e Require
12.13 Anatomia de um site com includes (cont)

Passo 5: Introduzir o conteudo do ficheiro homepage.php. <?php echo 'Bem vindo Home Page do nosso site'; ?>

Include e Require
12.14 Anatomia de um site com includes (cont)

Passo 6 : Introduzir o contedo dos ficheiros pagina1.php a pagina4.php.


<?php echo 'Agora mostramos o contedo da pgina <b>1</b>'; ?>