En aquest tema, aprendrem els conceptes bàsics de la Programació Orientada a Objectes (OOP) en PHP, centrant-nos en les classes i els objectes. La OOP és un paradigma de programació que utilitza "objectes" per representar dades i mètodes. Aquest enfocament ajuda a organitzar el codi de manera més modular i reutilitzable.
Què és una Classe?
Una classe és una plantilla per crear objectes. Defineix les propietats (atributs) i els mètodes (funcions) que els objectes creats a partir de la classe tindran.
Exemple de Classe
<?php class Cotxe { // Propietats public $marca; public $model; public $color; // Constructor public function __construct($marca, $model, $color) { $this->marca = $marca; $this->model = $model; $this->color = $color; } // Mètode public function descriure() { return "Aquest cotxe és un $this->marca $this->model de color $this->color."; } } ?>
Explicació del Codi
- Propietats: Les propietats són variables que pertanyen a la classe. En aquest exemple,
marca
,model
icolor
són propietats de la classeCotxe
. - Constructor: El constructor és un mètode especial que s'executa quan es crea un objecte. En aquest exemple, el constructor inicialitza les propietats
marca
,model
icolor
. - Mètode: Un mètode és una funció que pertany a la classe. En aquest exemple,
descriure
és un mètode que retorna una descripció del cotxe.
Què és un Objecte?
Un objecte és una instància d'una classe. Quan es crea un objecte, es poden accedir a les propietats i mètodes definits en la classe.
Exemple de Creació d'Objecte
<?php // Crear un objecte de la classe Cotxe $elMeuCotxe = new Cotxe("Toyota", "Corolla", "blau"); // Accedir a les propietats i mètodes de l'objecte echo $elMeuCotxe->descriure(); ?>
Explicació del Codi
- Creació d'Objecte: Utilitzem la paraula clau
new
per crear un objecte de la classeCotxe
. En aquest exemple,elMeuCotxe
és un objecte de la classeCotxe
. - Accés a Propietats i Mètodes: Utilitzem l'operador
->
per accedir a les propietats i mètodes de l'objecte. En aquest exemple, accedim al mètodedescriure
de l'objecteelMeuCotxe
.
Exercicis Pràctics
Exercici 1: Crear una Classe i un Objecte
- Crea una classe anomenada
Llibre
amb les propietatstitol
,autor
ipreu
. - Afegeix un constructor que inicialitzi aquestes propietats.
- Afegeix un mètode anomenat
descripcio
que retorni una cadena amb la descripció del llibre. - Crea un objecte de la classe
Llibre
i crida al mètodedescripcio
.
Solució
<?php class Llibre { public $titol; public $autor; public $preu; public function __construct($titol, $autor, $preu) { $this->titol = $titol; $this->autor = $autor; $this->preu = $preu; } public function descripcio() { return "El llibre '$this->titol' de $this->autor costa $this->preu euros."; } } $elMeuLlibre = new Llibre("El Senyor dels Anells", "J.R.R. Tolkien", 20); echo $elMeuLlibre->descripcio(); ?>
Exercici 2: Afegir Mètodes Addicionals
- Afegeix un mètode anomenat
aplicarDescompte
a la classeLlibre
que redueixi el preu del llibre en un percentatge donat. - Crea un objecte de la classe
Llibre
, aplica un descompte i mostra la nova descripció.
Solució
<?php class Llibre { public $titol; public $autor; public $preu; public function __construct($titol, $autor, $preu) { $this->titol = $titol; $this->autor = $autor; $this->preu = $preu; } public function descripcio() { return "El llibre '$this->titol' de $this->autor costa $this->preu euros."; } public function aplicarDescompte($percentatge) { $this->preu -= $this->preu * ($percentatge / 100); } } $elMeuLlibre = new Llibre("El Senyor dels Anells", "J.R.R. Tolkien", 20); $elMeuLlibre->aplicarDescompte(10); echo $elMeuLlibre->descripcio(); ?>
Resum
En aquesta secció, hem après els conceptes bàsics de les classes i els objectes en PHP. Hem vist com definir una classe amb propietats i mètodes, com crear objectes a partir d'una classe i com accedir a les propietats i mètodes dels objectes. També hem practicat aquests conceptes amb exercicis pràctics.
En el següent tema, explorarem les propietats i mètodes amb més detall, incloent-hi la visibilitat (public, private, protected) i com utilitzar-los per encapsular dades i funcionalitats dins de les nostres classes.
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ó