Les declaracions switch en PHP són una manera eficient de gestionar múltiples condicions basades en el valor d'una variable. Són especialment útils quan es necessita comparar una variable amb diversos valors possibles i executar diferents blocs de codi segons el resultat de la comparació.
Conceptes Clau
- Declaració
switch: Permet comparar una variable amb múltiples valors. - Cases: Cada possible valor de la variable es defineix amb una declaració
case. - Break: Utilitzat per sortir del bloc
switchdesprés d'executar un cas. - Default: Opció per defecte que s'executa si cap dels casos coincideix.
Estructura Bàsica
La sintaxi d'una declaració switch és la següent:
switch (variable) {
case valor1:
// Codi a executar si variable és igual a valor1
break;
case valor2:
// Codi a executar si variable és igual a valor2
break;
// Més casos...
default:
// Codi a executar si cap dels casos anteriors coincideix
}Exemple Pràctic
Vegem un exemple pràctic per entendre millor com funcionen les declaracions switch en PHP.
Exemple: Determinar el Dia de la Setmana
<?php
$dia = 3;
switch ($dia) {
case 1:
echo "Dilluns";
break;
case 2:
echo "Dimarts";
break;
case 3:
echo "Dimecres";
break;
case 4:
echo "Dijous";
break;
case 5:
echo "Divendres";
break;
case 6:
echo "Dissabte";
break;
case 7:
echo "Diumenge";
break;
default:
echo "Dia no vàlid";
}
?>Explicació del Codi
- Variable
$dia: Es defineix la variable$diaamb el valor3. - Declaració
switch: La variable$diaes compara amb els valors dels diferents casos. - Cases: Cada
caserepresenta un dia de la setmana. Si$diaés igual a3, s'executa el codi dins delcase 3i es mostra "Dimecres". - Break: Després d'executar el codi dins d'un
case, la declaracióbreakevita que s'executin els casos següents. - Default: Si cap dels casos coincideix, s'executa el codi dins del
default.
Exercicis Pràctics
Exercici 1: Classificació de Notes
Escriu un script PHP que classifiqui una nota (de 0 a 10) en una categoria (Suspès, Aprovat, Notable, Excel·lent).
<?php
$nota = 8;
switch (true) {
case ($nota >= 0 && $nota < 5):
echo "Suspès";
break;
case ($nota >= 5 && $nota < 7):
echo "Aprovat";
break;
case ($nota >= 7 && $nota < 9):
echo "Notable";
break;
case ($nota >= 9 && $nota <= 10):
echo "Excel·lent";
break;
default:
echo "Nota no vàlida";
}
?>Solució
- Variable
$nota: Es defineix la variable$notaamb el valor8. - Declaració
switch: La variable$notaes compara amb diferents rangs de valors. - Cases: Cada
caserepresenta un rang de notes. Si$notaés8, s'executa el codi dins delcase ($nota >= 7 && $nota < 9)i es mostra "Notable". - Break: Després d'executar el codi dins d'un
case, la declaracióbreakevita que s'executin els casos següents. - Default: Si cap dels casos coincideix, s'executa el codi dins del
default.
Errors Comuns i Consells
- Oblidar el
break: Si oblides la declaracióbreak, el codi continuarà executant els casos següents fins trobar unbreako arribar al final delswitch. - Ús de
default: Sempre és una bona pràctica incloure un casdefaultper gestionar valors inesperats. - Comparació de valors: Assegura't que els valors dels casos siguin del mateix tipus que la variable que estàs comparant.
Conclusió
Les declaracions switch són una eina poderosa per gestionar múltiples condicions de manera clara i eficient. Amb una comprensió sòlida de la seva sintaxi i ús, pots simplificar el teu codi i fer-lo més llegible. Practica amb diferents exemples per dominar aquesta estructura de control en PHP.
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ó
