Spazi dei nomi in PHP

N
Proprietà statiche in PHP OOP
Iterabili in PHP

Cosa sono gli spazi dei nomi in PHP?

Gli spazi dei nomi in PHP sono anche descritti come qualificatori che forniscono due funzioni principali al programma.

  1. Usando lo spazio dei nomi, organizza il codice raggruppando le classi della stessa natura in un unico spazio dei nomi.
  2. Lo spazio dei nomi ci consente di utilizzare lo stesso nome per più di una classe perché sono racchiuse nello spazio dei nomi.

Esempio generale di namespace

Ad esempio, abbiamo un gruppo di classi che eseguono le operazioni matematiche di base DMAS (Divisione, Moltiplicazione, Addizione e Sottrazione). Abbiamo anche un altro gruppo di classi che preparano il risultato degli studenti di una classe.

Gli spazi dei nomi ci consentono di organizzare questi due insiemi di classi in due spazi dei nomi. Uno spazio dei nomi conterrà le classi relative alla matematica e l'altro conterrà le classi di calcolo dei risultati.

Come dichiarare lo spazio dei nomi in PHP?

  • Lo spazio dei nomi è dichiarato nella parte superiore dello script PHP in modo che possa essere disponibile nel file.
  • namespace la parola chiave è riservata per dichiarare gli spazi dei nomi.

Sintassi

// Declare a namespace maths:
namespace Maths;

Note:: È obbligatorio dichiarare lo spazio dei nomi all'inizio del file/ Il codice seguente sarebbe sbagliato.

<?php
echo "Hello PHP!";
namespace Maths;
...
?>

Ora, guarda l'altro lato di questo argomento, ovvero le classi che fanno parte dello spazio dei nomi. Prendiamo la classe Maths come classe di esempio e la dichiariamo nello spazio dei nomi.

Crea una classe Division nello spazio dei nomi Math

<?php
namespace Maths;
class Division {
  public function divide($numenator, $denominator) {
         $result = $numenator/$denominator;
         echo $result;
  }
}
$div= new Division();
?>

<!DOCTYPE html>
<html>
<body>

<?php
$div->divide(6, 3);
?>
</body>
</html>
  • Nell'esempio sopra, creiamo una classe Divison nello spazio dei nomi Maths. Concentrati sul usa lo spazio dei nomi uso delle parole chiave in cima alla classe Division. Definisce che questa classe Divison fa parte dello spazio dei nomi di Math.
  • Ora possiamo accedere al metodo di divisione ovunque utilizzando lo spazio dei nomi Maths nel nostro codice.

Come dichiarare gli spazi dei nomi nidificati?

Supponiamo di voler dichiarare lo spazio dei nomi Maths all'interno dello spazio dei nomi del codice.

namespace Code\Maths;

Come utilizzare gli spazi dei nomi in PHP?

  • La classe che appartiene a uno spazio dei nomi non ha bisogno di oggetti. Possiamo accedere alla classe nel codice che sta usando lo spazio dei nomi della classe a cui vogliamo accedere senza creare la sua istanza.
  • Per accedere a una classe al di fuori dello spazio dei nomi, possiamo farlo allegandovi lo spazio dei nomi.

Esempio

$div= new Maths\division()
$mul= new Maths\multiplication();

Quando abbiamo molte classi che utilizzano lo stesso spazio dei nomi, è più semplice utilizzare la parola chiave dello spazio dei nomi invece di accedervi come nell'esempio precedente.

namespace Maths;
$div = new division();
$mul = new multiplication();

Nell'esempio sopra, accediamo alle classi di divisione e moltiplicazione senza utilizzare il qualificatore Maths\division o Maths\moltiplicazione.

Utilizzo di alias con namespace

Dare un alias (nickname) a uno spazio dei nomi è più facile da scrivere all'interno del codice. Ciò è utile quando lo spazio dei nomi è troppo lungo o noioso da scrivere più e più volte.

Esempio

use Maths as M;
$div = new M\division();

Panoramica degli spazi dei nomi in PHP nel documentazione ufficiale PHP.

Proprietà statiche in PHP OOP
Iterabili in PHP

Aggiungi un commento

Rete di tutor

Condividi questo

Impara PHP dalla A alla Z