Nessun risultato. Prova con un altro termine.
Guide
Notizie
Software
Tutorial
  • Lezione 3 di 50
  • livello avanzato
Indice lezioni

Le basi della OOP in PHP

I concetti fondamentali riguardanti proprietà metodi e oggetti, componenti fondamentali che ci permetteranno di creare la nostra prima classe e comprendere il significato del concetto di istanza nella OOP.
I concetti fondamentali riguardanti proprietà metodi e oggetti, componenti fondamentali che ci permetteranno di creare la nostra prima classe e comprendere il significato del concetto di istanza nella OOP.
Link copiato negli appunti

Come abbiamo visto in precedenza, tramite il modello orientato agli oggetti è possibile centralizzare più funzionalità all'interno di un'unica "postazione". Questa postazione prende il nome di classe. Una classe è una "struttura" con al suo interno variabili e funzioni che condividono funzionalità e risorse, che rimangono in attesa di essere utilizzate tramite le istanze della classe stessa.

Classi, oggetti, proprietà, metodi

Prima di addentrarci nell'argomento è necessaria una conoscenza di base delle differenze tra gli oggetti, le classi, le proprietà e i metodi.

Definizione base dell'OOP:

Elemento Descrizione
Proprietà Variabili di una classe. Funzionano esattamente come le variabili regolari, tranne per il fatto che sono legate all'oggetto.
Metodi Funzioni specifiche di una classe. Le azioni che un oggetto sarà in grado di eseguire.
Oggetto Un oggetto è un'istanza di una classe.

Definiamo quindi la nostra prima classe

<?php
	class Person {
		// proprietà
		public $name = "";	

		//costruttore
		public function __construct($name)
				{
				//inizializzare della variabile $name
				$this->name = $name;
			}
			//metodi
			public function getName() {
			//$this rappresenta l'oggetto che sarà costruito a runtime
			return $this->name;
			}

		}
		//istanzia un nuovo oggetto della classe Person
		$customer1 = new person("Giuseppe Rossi");
		//istanzia un nuovo oggetto della classe Person
		$customer2 = new person("Guglielmo Cancelli");				

		echo "Cliente: ".$customer1->getName()."<br>";
		echo "Cliente: ".$customer2->getName()."<br>";
	}
	?>

Nell'esempio abbiamo creato la classe Person class

Proprietà

Per aggiungere proprietà (variabili) alla classe, utilizzeremo il seguente codice:

public $name;

Nell'esempio abbiamo creato un unico attributo: $name. La keyword public, di cui parleremo nei prossimi capitoli, determina invece il livello di visibilità delle proprietà.

I metodi

Una volta create le proprietà possiamo definire il nostro metodo getName per accedere al contenuto della proprietà $name:

public function getName() {
	//$this rappresenta l'oggetto che sarà costruito a runtime
	return $this->name;
}

Per accedere agli attributi dell'oggetto la sintassi da utilizzare è la seguente:

return $this->name;

L'oggetto

La classe è una dichiarazione di metodi e proprietà che lavorano su di essa e per questo motivo non può essere usata direttamente. Per poterla utilizzare bisogna invece istanziare un oggetto.

Per creare una nuova istanza, basterà scrivere:

$customer1 = new person("Giuseppe Rossi");
$customer2 = new person("Guglielmo Cancelli");

La chiave new person $customer getName() $customer1 person

$customer1->getName();

Il codice produrrà il seguente output:

Cliente: Giuseppe Rossi
Cliente: Guglielmo Cancelli

Nota: Nel nostro esempio abbiamo usato il metodo __construct $name __construct __construct metodi magici

Ti consigliamo anche