En aquest tema, explorarem el concepte de l'àmbit de les variables en PHP. L'àmbit d'una variable determina on es pot accedir a aquesta variable dins del codi. Comprendre l'àmbit de les variables és crucial per evitar errors i escriure codi net i eficient.
Tipus d'Àmbit de Variables
En PHP, hi ha quatre tipus principals d'àmbit de variables:
- Àmbit Local
- Àmbit Global
- Àmbit Estàtic
- Àmbit de Paràmetres de Funció
- Àmbit Local
Les variables declarades dins d'una funció tenen àmbit local. Això significa que només es poden accedir a aquestes variables dins de la funció on han estat declarades.
<?php function exempleLocal() { $variableLocal = "Hola, món!"; echo $variableLocal; // Això funciona } exempleLocal(); echo $variableLocal; // Això donarà un error ?>
- Àmbit Global
Les variables declarades fora de qualsevol funció tenen àmbit global. Aquestes variables poden ser accedides des de qualsevol part del codi, excepte dins de les funcions, tret que s'utilitzi la paraula clau global
.
<?php $variableGlobal = "Hola, món!"; function exempleGlobal() { global $variableGlobal; echo $variableGlobal; // Això funciona gràcies a la paraula clau 'global' } exempleGlobal(); echo $variableGlobal; // Això també funciona ?>
- Àmbit Estàtic
Les variables estàtiques dins d'una funció conserven el seu valor entre crides a la funció. Això és útil quan es necessita mantenir l'estat d'una variable entre diverses execucions de la funció.
<?php function exempleStatic() { static $contador = 0; $contador++; echo $contador; } exempleStatic(); // Imprimeix 1 exempleStatic(); // Imprimeix 2 exempleStatic(); // Imprimeix 3 ?>
- Àmbit de Paràmetres de Funció
Els paràmetres de funció tenen àmbit local dins de la funció. Això significa que només es poden accedir a aquests paràmetres dins de la funció on han estat definits.
<?php function exempleParametres($parametre) { echo $parametre; } exempleParametres("Hola, món!"); // Imprimeix "Hola, món!" echo $parametre; // Això donarà un error ?>
Exercicis Pràctics
Exercici 1: Àmbit Local
Crea una funció que declari una variable local i imprimeixi el seu valor. Intenta accedir a aquesta variable fora de la funció i observa què passa.
<?php function exerciciLocal() { $variableLocal = "Això és una variable local"; echo $variableLocal; } exerciciLocal(); echo $variableLocal; // Què passa aquí? ?>
Exercici 2: Àmbit Global
Declara una variable global i crea una funció que accedeixi a aquesta variable utilitzant la paraula clau global
.
<?php $variableGlobal = "Això és una variable global"; function exerciciGlobal() { global $variableGlobal; echo $variableGlobal; } exerciciGlobal(); ?>
Exercici 3: Àmbit Estàtic
Crea una funció que utilitzi una variable estàtica per comptar el nombre de vegades que la funció ha estat cridada.
<?php function exerciciStatic() { static $contador = 0; $contador++; echo $contador; } exerciciStatic(); // Imprimeix 1 exerciciStatic(); // Imprimeix 2 exerciciStatic(); // Imprimeix 3 ?>
Exercici 4: Àmbit de Paràmetres de Funció
Crea una funció que accepti un paràmetre i imprimeixi el seu valor. Intenta accedir a aquest paràmetre fora de la funció i observa què passa.
<?php function exerciciParametres($parametre) { echo $parametre; } exerciciParametres("Això és un paràmetre de funció"); echo $parametre; // Què passa aquí? ?>
Resum
En aquest tema, hem après sobre els diferents tipus d'àmbit de variables en PHP: local, global, estàtic i de paràmetres de funció. Hem vist com cada tipus d'àmbit afecta la visibilitat i la vida útil de les variables. A més, hem practicat aquests conceptes amb exercicis pràctics per reforçar el nostre coneixement.
En el següent tema, explorarem les funcions anònimes i les closures en PHP, que ens permetran escriure codi més flexible i modular.
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ó