En aquest tema, aprendrem sobre les funcions include i require en PHP, que ens permeten incloure fitxers externs en els nostres scripts. Aquestes funcions són molt útils per organitzar el codi i reutilitzar components comuns en diferents parts de la nostra aplicació.
Què són include i require?
Les funcions include i require s'utilitzen per incloure i avaluar fitxers PHP externs dins d'un script PHP. La diferència principal entre elles és com gestionen els errors:
include: Si el fitxer no es troba, emet un avís (warning) i el script continua executant-se.require: Si el fitxer no es troba, emet un error fatal i el script s'atura.
Sintaxi
La sintaxi per utilitzar include i require és molt senzilla:
Exemples Pràctics
Exemple 1: Utilitzant include
Suposem que tenim un fitxer header.php que conté el codi HTML per a la capçalera del nostre lloc web:
<!-- header.php -->
<!DOCTYPE html>
<html>
<head>
<title>El Meu Lloc Web</title>
</head>
<body>
<header>
<h1>Benvingut al Meu Lloc Web</h1>
</header>Podem incloure aquest fitxer en el nostre script principal index.php utilitzant include:
<!-- index.php -->
<?php include 'header.php'; ?>
<main>
<p>Aquesta és la pàgina principal.</p>
</main>
</body>
</html>Exemple 2: Utilitzant require
Ara, suposem que tenim un fitxer config.php que conté configuracions essencials per a la nostra aplicació:
<!-- config.php --> <?php $host = 'localhost'; $dbname = 'my_database'; $username = 'root'; $password = ''; ?>
Podem incloure aquest fitxer en el nostre script principal index.php utilitzant require:
<!-- index.php -->
<?php require 'config.php'; ?>
<?php
// Utilitzem les variables de configuració
$conn = new PDO("mysql:host=$host;dbname=$dbname", $username, $password);
?>
<main>
<p>Connexió a la base de dades establerta.</p>
</main>
</body>
</html>Diferències entre include i require
| Funció | Comportament en cas d'error | Continuació del script |
|---|---|---|
| include | Emet un avís (warning) | Sí |
| require | Emet un error fatal | No |
Exercicis Pràctics
Exercici 1: Incloure un Fitxer de Capçalera
-
Crea un fitxer anomenat
header.phpamb el següent contingut:<!-- header.php --> <header> <h1>Capçalera del Lloc Web</h1> </header> -
Crea un fitxer anomenat
index.phpi inclou el fitxerheader.phputilitzantinclude.
Exercici 2: Incloure un Fitxer de Configuració
-
Crea un fitxer anomenat
config.phpamb el següent contingut:<!-- config.php --> <?php $site_name = 'El Meu Lloc Web'; $admin_email = 'admin@example.com'; ?> -
Crea un fitxer anomenat
index.phpi inclou el fitxerconfig.phputilitzantrequire. Mostra les variables$site_namei$admin_emailen el cos de la pàgina.
Solucions
Solució a l'Exercici 1
<!-- index.php -->
<?php include 'header.php'; ?>
<main>
<p>Aquesta és la pàgina principal.</p>
</main>
</body>
</html>Solució a l'Exercici 2
<!-- index.php -->
<?php require 'config.php'; ?>
<main>
<h1><?php echo $site_name; ?></h1>
<p>Contacta amb nosaltres a: <?php echo $admin_email; ?></p>
</main>
</body>
</html>Conclusió
Les funcions include i require són eines poderoses per modularitzar i organitzar el codi PHP. Utilitzant aquestes funcions, podem dividir el nostre codi en fitxers més petits i manejables, facilitant la seva reutilització i manteniment. Recorda utilitzar include quan l'absència del fitxer no sigui crítica i require quan el fitxer sigui essencial per al funcionament del teu script.
Curs de Programació PHP
Mòdul 1: Introducció a PHP
- Què és PHP?
- Configuració de l'Entorn de Desenvolupament
- El teu Primer Script PHP
- Sintaxi i Variables de PHP
- Tipus de Dades en PHP
Mòdul 2: Estructures de Control
Mòdul 3: Funcions
- Definició i Crida de Funcions
- Paràmetres de Funció i Valors de Retorn
- Àmbit de Variables
- Funcions Anònimes i Closures
Mòdul 4: Arrays
Mòdul 5: Treballant amb Formularis
Mòdul 6: Treballant amb Fitxers
- Lectura i Escriptura de Fitxers
- Funcions de Gestió de Fitxers
- Permisos de Fitxers
- Funcions de Directori
Mòdul 7: Programació Orientada a Objectes (OOP)
- Introducció a OOP
- Classes i Objectes
- Propietats i Mètodes
- Herència
- Interfícies i Classes Abstractes
- Traits
Mòdul 8: Treballant amb Bases de Dades
- Introducció a les Bases de Dades
- Connexió a una Base de Dades MySQL
- Realització d'Operacions CRUD
- Ús de PDO per a la Interacció amb Bases de Dades
- Seguretat en Bases de Dades
Mòdul 9: Tècniques Avançades de PHP
- Gestió d'Errors i Excepcions
- Sessions i Cookies
- Expressions Regulars
- Treballant amb JSON i XML
- PHP i Serveis Web
Mòdul 10: Frameworks PHP i Millors Pràctiques
- Introducció als Frameworks PHP
- Començant amb Laravel
- Arquitectura MVC
- Millors Pràctiques en Desenvolupament PHP
- Proves i Depuració
