Concetti OOPS in PHP | Programmazione orientata agli oggetti in PHP

Pubblicato: 2020-12-14

PHP è una piattaforma flessibile in termini di accesso a funzioni e variabili membro. OOP in PHP allude a uno stile di programmazione che ha un'associazione di classe, oggetti e vari componenti.

PHP è un linguaggio di programmazione lato server utilizzato per lo sviluppo web. La programmazione orientata agli oggetti in PHP aiuta gli sviluppatori a creare applicazioni Web complesse e riutilizzabili. La programmazione orientata agli oggetti è uno stile di programmazione che si riferisce all'associazione di vari componenti e ruota attorno ai concetti di ereditarietà, polimorfismo, incapsulamento e astrazione.

OOP è programmato in modo tale che gli utenti possano concentrarsi sull'oggetto durante lo sviluppo del programma e del codice, ma non la procedura. OOP si concentra anche sull'avvicinare la programmazione alla vita reale. In questo articolo, esploreremo alcuni dei concetti fondamentali di OOP in PHP.

Sommario

Principali concetti OOPS in PHP

PHP è un linguaggio di programmazione orientato agli oggetti che supporta diversi concetti. Alcuni di loro sono i seguenti:

Classe e oggetti : la classe è un tipo di dati definito dal programmatore, che include variabili locali e metodi locali. È anche una raccolta di oggetti, mentre gli oggetti hanno proprietà e comportamenti simili. Una singola istanza della struttura dati definita dalla classe è un oggetto. La classe è generica e l'oggetto è specifico. Gli sviluppatori possono creare un'istanza dell'oggetto ma non di una classe e un oggetto è un'istanza di una classe.

Interfacce : l'interfaccia in PHP è una descrizione delle azioni che gli oggetti possono eseguire. È scritto nello stesso modo in cui la classe viene dichiarata con ogni parola chiave dell'interfaccia. I metodi dichiarati in un'interfaccia sono pubblici e possono essere estesi proprio come le classi con lo stesso operatore extend.

Astrazione- L' astrazione è un concetto per spostare l'attenzione dai dettagli di programmazione e dall'implementazione concreta delle cose ai loro tipi e disponibilità delle operazioni. L'astrazione rende la programmazione facile e generale per lo sviluppatore, ed è più come generalizzare le specifiche.

Costruttore – È una funzione speciale che viene chiamata automaticamente ogni volta che c'è una formazione di oggetti dalla classe.

Destructor – È una funzione speciale che viene chiamata automaticamente ogni volta che l'oggetto viene eliminato o lascia l'ambito.

Sovraccarico : è un tipo speciale di polimorfismo in cui tutti o alcuni operatori hanno diverse implementazioni a seconda del tipo di argomento. Le stesse funzioni possono essere sovraccaricate con più implementazioni.

Leggi: Idee e argomenti per progetti PHP

Principi e concetto OOPS in PHP

I principali principi di programmazione orientata agli oggetti in PHP sono i seguenti:

Incapsulamento : questo concetto evidenzia le proprietà di associazione, i metodi e nasconde i dettagli di implementazione. L'obiettivo principale dell'incapsulamento è limitare le complicazioni durante lo sviluppo del software e semplifica anche l'utilizzo di oggetti di classe. Protegge anche lo stato interno dell'oggetto e ne facilita la manutenzione.

Ereditarietà : questo concetto è allineato con l'associazione tra classi e mette in evidenza la relazione tra una classe figlia e una classe genitore. Inoltre, il figlio utilizza metodi definiti dal genitore.

La funzione principale dell'ereditarietà è la riutilizzabilità, estremamente utile quando gli sviluppatori devono offrire funzioni di base come l'aggiornamento, l'aggiunta o l'eliminazione di componenti di dati dal database. L'ereditarietà è segmentata come eredità a livello singolo e eredità a più livelli.

Polimorfismo : il termine si riferisce all'utilizzo di una singola istanza in più modi di implementazione. È un concetto che consente agli utenti di definire un metodo modificando i loro segmenti o modificando il modo in cui viene eseguito. Il polimorfismo enfatizza il mantenimento delle applicazioni e la conduzione di un caso d'uso estensibile.

Leggi anche: Domande sull'intervista PHP

Creazione di oggetti in PHP

Innanzitutto, in PHP, vengono create classi in cui gli utenti possono creare più oggetti nella stessa classe a loro scelta. Ogni oggetto viene creato con l'aiuto di una nuova parola chiave. Quando viene creata una classe, gli sviluppatori possono creare tutti i numeri di oggetti che desiderano per la stessa classe.

Funzione membro chiamante

Quando l'oggetto viene creato, gli sviluppatori possono accedere alle funzioni del metodo e alle variabili della classe utilizzando l'operatore '->'. Una funzione membro è in grado di elaborare solo le variabili membro di oggetti correlati. Facciamo un esempio che mostra come impostare il prezzo e il titolo per tre libri qualsiasi chiamando le funzioni membro:

$fisica->setTitle(“Fisica per le scuole superiori”);

$chimica->setTitle("Chimica Avanzata");

$matematica->setTitle( “Algebra” );

$fisica->setPrice( 10 );

$chimica->setPrice( 15 );

$matematica->setPrice( 7 );

Per ottenere il valore impostato puoi chiamare un'altra funzione membro:

$fisica->getTitle();

$chimica->getTitle();

$matematica->getTitle();

$fisica->getPrice();

$chimica->getPrice();

$matematica->getPrice();

Ciò produrrà il seguente risultato:

Fisica per il Liceo

Chimica avanzata

Algebra

10

15

7

Creazione di una classe astratta

<?php

classe astratta DBCommonMethods

{

privato $host;

privato $db;

$uid privato;

password privata $;

funzione pubblica __construct($host, $db, $uid, $password)

{

$questo->ospite = $ospite;

$questo->db = $db;

$questo->uid = $uid;

$questo->password = $password;

}

}

?>

Qui,

  • "Classe astratta" si riferisce alla classe che non può essere utilizzata direttamente per creare un oggetto.
  • “$host,$db …” sono le variabili di classe comuni in varie implementazioni

Creazione interfaccia

Creiamo ora un'interfaccia contenente metodi standard per implementare diverse variabili di database:

<?php

interfaccia DBInterface

{

funzione pubblica db_connect();

inserimento della funzione pubblica ($dati);

funzione pubblica read($dove);

aggiornamento della funzione pubblica($dove);

funzione pubblica delete($dove);

}

?>

Qui,

  • “Interface” è una parola chiave per la creazione delle interfacce
  • La "funzione pubblica" è un metodo standard da implementare

Creiamo una classe concreta che possa estendere le classi e le interfacce dei metodi DBCommon:

<?La classe php MySQLDriver si estende

DBCommonMethods implementa DBInterface { funzione pubblica __construct($host, $db, $uid, $password)

{

genitore::__construct($host, $db, $uid, $password); }

funzione pubblica db_connect() { //il codice di connessione va qui}

funzione pubblica delete($dove) { //cancella il codice va qui}

public function insert($data) { //il codice di inserimento va qui}

public function read($dove) { //leggi il codice va qui}

aggiornamento della funzione pubblica($dove) { //il codice di aggiornamento va qui}

} ?>

Sovrascrittura della funzione

La funzione nelle classi figlie esegue l'override all'interno dello stesso nome della classe padre. In una classe figlia, lo sviluppatore può modificare la definizione della funzione ereditata dalla classe genitore.

funzione getPrezzo() {

echo $questo->prezzo . “<br/>”;

restituisci $questo->prezzo;

}

funzione getTitle(){

echo $questo->titolo . “<br/>”;

restituisce $questo->titolo;

}

Visibilità

Ogni metodo e proprietà in PHP ha la sua visibilità dichiarata da parole chiave come private, public e protected che sono spiegate di seguito:

  • Pubblico: consente a qualsiasi utente esterno di accedere al metodo e alla proprietà.
  • Privato: non dà accesso a nessun utente tranne se stesso.
  • Protetto: consente solo alle classi dei bambini e a se stesso di accedere al metodo e alla proprietà.

Iscriviti ai corsi di ingegneria del software dalle migliori università del mondo. Guadagna programmi Executive PG, programmi di certificazione avanzati o programmi di master per accelerare la tua carriera.

Conclusione

Il concetto di base della programmazione orientata agli oggetti in PHP è menzionato in questo articolo.

Se sei interessato a saperne di più sullo sviluppo di software full-stack, dai un'occhiata al programma Executive PG di upGrad & IIIT-B in Full-stack Software Development, progettato per i professionisti che lavorano e offre oltre 500 ore di formazione rigorosa, oltre 9 progetti, e incarichi, status di Alumni IIIT-B, progetti pratici pratici e assistenza sul lavoro con le migliori aziende.

Diventa uno sviluppatore full stack

Candidati ora per un Master in Ingegneria del Software