Interfaccia in PHP | Interfacce PHP OOP
Pubblicato: 2021-03-03Sommario
introduzione
PHP è un linguaggio orientato agli oggetti e un'interfaccia è una delle caratteristiche principali di un linguaggio di programmazione orientato agli oggetti. L'interfaccia consente ai programmatori di dichiarare le funzioni contenenti le diverse definizioni nella classe che implementa tale interfaccia. Continua a leggere per comprendere l' interfaccia in PHP . Inoltre, esamina gli esempi di interfaccia in PHP condivisi nell'articolo per ottenere una maggiore comprensione.
Interfaccia in PHP
Un'interfaccia è una caratteristica della programmazione orientata agli oggetti che consente di creare funzioni senza implementazione. L'implementazione deve essere inclusa nella classe. Aiuta a prevenire la complessità della definizione del metodo, poiché ogni classe che eredita l'interfaccia può avere un'implementazione diversa in base alle necessità. L'utilizzo dell'interfaccia in PHP è simile alla classe, con l'unica differenza che l'implementazione non è presente nelle funzioni nell'interfaccia e l'interfaccia non ha variabili.
Caratteristiche di un'interfaccia in PHP
- L'interfaccia non contiene il codice.
- L'interfaccia ha la dichiarazione del metodo con o senza argomenti ma non la definizione.
- Una classe che sta implementando l'interfaccia dovrebbe contenere la definizione di tutti i metodi dichiarati nell'interfaccia.
- Una classe può avere l'implementazione di più interfacce.
- Un'interfaccia non può avere metodi non astratti.
Sintassi di un'interfaccia
L'interfaccia deve essere dichiarata prima dell'uso. La sintassi di un'interfaccia è simile a quella di una classe, con l'unica differenza che la parola chiave interface viene utilizzata al posto della parola chiave class durante la dichiarazione dell'interfaccia. Di seguito è riportata la sintassi per dichiarare un'interfaccia in PHP :
<?php
//Dichiarazione dell'interfaccia in PHP
Interfaccia <Nome interfaccia>

{
//Codice
}
?>
È possibile accedere ai metodi dichiarati all'interno dell'interfaccia ereditando l'interfaccia per classe. La classe eredita l' interfaccia in PHP usando la parola chiave implements mentre dichiara la classe.
Di seguito è riportata la sintassi per implementare un'interfaccia in PHP :
<?php
//Dichiarazione di classe
La classe <Nome classe> implementa <Nome interfaccia>
{
//Codice
}
?>
Esempi di interfaccia in PHP
Per comprendere l'utilizzo dell'interfaccia, diamo un'occhiata all'esempio seguente:
<?php
//Dichiarazione dell'interfaccia
Esempio di interfaccia_Shape
{
Funzione pubblica ShapeArea();
}
//Classe che eredita l'interfaccia
La classe Shape1 implementa Esempio_Shape
{
Funzione pubblica ShapeArea()
{
Echo 'Area del cerchio';
}
}
//Classe che eredita l'interfaccia
La classe Shape2 implementa Esempio_Shape
{
Funzione pubblica ShapeArea()
{
Echo 'Area della piazza';
}
}
// Classe senza utilizzare l'interfaccia
Forma di classe3
{
Funzione pubblica AreaCal()
{
Eco 'Nessuna interfaccia';

}
}
$Oggetto1 = nuova Forma1; // Oggetto per classe1
$Oggetto2 = nuova Forma2; // Oggetto per class2
$obj3 = nuova forma3; // Oggetto per la classe 3, non utilizza l'interfaccia
Echo $obj1->ShapeArea();
Eco '<br>';
Echo $obj2->ShapeArea();
Eco '<br>';
Eco $obj3->AreaCal();
?>
Produzione
Area del cerchio
Area di piazza
Nessuna interfaccia
Spiegazione dell'output
La classe Shape1 ha la definizione di una funzione dichiarata all'interno dell'interfaccia. Shape1 implementa l'interfaccia, quindi ha accesso alla funzione al suo interno e stampa 'Area del cerchio'. Simile è la spiegazione per la classe Shape2 e l'output "Area del quadrato". La classe Shape3 non implementa l'interfaccia e funziona come una normale classe in PHP.
Implementazione di interfacce multiple
Una classe può anche implementare più di un'interfaccia. In questi casi, la classe deve avere la definizione di tutti i metodi dichiarati in tutte le interfacce che la classe sta implementando. Di seguito è illustrata l'implementazione di più di un'interfaccia in PHP .
<?php
// Dichiarazione di interfaccia
Esempio di interfaccia1
{
Funzione pubblica metodo1();
}
// Dichiarazione di un'altra interfaccia
Esempio di interfaccia2
{
Funzione pubblica metodo2();
}
//Classe che implementa le due interfacce dichiarate sopra
classe class1 implementa esempio1, esempio2
{
// Definizione del metodo di interfaccia1
Metodo della funzione pubblica1
{
Echo 'Inside interface1 method1';
}
//Definizione del metodo di interface2
Metodo della funzione pubblica2
{
Echo 'Inside interface2 method2;
}
}
Obj1 = nuova classe1;
Obj2 = nuova classe2;
Obj1->metodo1;
Obj2->metodo2;
?>
Produzione
All'interno dell'interfaccia1 metodo1

All'interno del metodo interface22
Alcuni punti da notare sull'implementazione di interfacce multiple
- Tutti i metodi dichiarati nell'interfaccia dovrebbero essere pubblici.
- La funzione non può avere la parola chiave abstract.
- Se il programmatore dimentica di definire qualsiasi funzione di interfaccia, il codice genererà un errore.
- Le interfacce non possono contenere variabili.
Checkout: Concetti OOPs in PHP
Differenza tra un'interfaccia e una classe astratta
Di seguito sono riportate alcune delle differenze tra un'interfaccia e una classe astratta:
- Un'interfaccia contiene solo la dichiarazione, ma una classe astratta contiene sia la dichiarazione del metodo che la sua definizione.
- I metodi nell'interfaccia possono essere solo pubblici, mentre i metodi nella classe astratta possono essere dichiarati come pubblici, privati o protetti.
- Una classe può implementare più di un'interfaccia, mentre una classe può estendere un solo metodo astratto.
Conclusione
Un'interfaccia in PHP è una funzionalità che consente agli utenti di dichiarare metodi pubblici senza definizione. Questo articolo ha spiegato tutte le informazioni sull'interfaccia con la sua sintassi ed esempi. Ci auguriamo che le informazioni condivise in questo articolo ti siano utili per comprendere il concetto. Puoi imparare argomenti simili basati su PHP sui blog upGrad. Per una comprensione approfondita, puoi iscriverti a un corso di certificazione online su PHP su upGrad. upGrad offre molti corsi di certificazione che possono aiutarti con la tua carriera e apprendimento.
Se sei interessato a saperne di più sullo sviluppo di software full-stack, dai un'occhiata al Diploma PG di upGrad e IIIT-B in Sviluppo software full-stack, progettato per i professionisti che lavorano e offre oltre 500 ore di formazione rigorosa, oltre 9 progetti e incarichi, stato di Alumni IIIT-B, progetti pratici pratici e assistenza sul lavoro con le migliori aziende.