⊗ppOpNsSn 96 of 107 menu

Sintassi degli spazi dei nomi nella OOP in PHP

Per assegnare a una classe uno spazio dei nomi, è necessario scrivere come prima riga del file in cui è memorizzata questa classe il comando namespace, e dopo di esso, separato da uno spazio, il nome di questo spazio dei nomi.

Se una classe appartiene a uno spazio dei nomi, per creare un oggetto della classe sarà necessario specificare non solo il nome della classe, ma anche il suo spazio dei nomi, separati da una barra rovesciata. Diamo un'occhiata a un esempio.

Supponiamo di avere una classe Page, che non appartiene a nessuno spazio dei nomi. Allora creeremo un oggetto di questa classe nel modo seguente:

<?php $page = new Page; ?>

Supponiamo ora che questa classe appartenga allo spazio dei nomi Admin. In questo caso, creeremo l'oggetto di questa classe già in questo modo:

<?php $page = new \Admin\Page; ?>

Separiamo le classi per gli utenti e le classi per gli amministratori in diversi spazi dei nomi, per evitare i conflitti di classe descritti sopra.

Per la classe Page dal file /admin/page.php indichiamo lo spazio dei nomi Admin:

<?php namespace Admin; class Page { } ?>

E per la classe Page dal file /users/page.php indichiamo lo spazio dei nomi Users:

<?php namespace Users; class Page { } ?>

Creiamo ora nel file /index.php un oggetto della prima e della seconda classe Page:

<?php require_once '/admin/page.php'; require_once '/users/page.php'; $adminPage = new \Admin\Page; $usersPage = new \Users\Page; ?>

Supponiamo che tu abbia una cartella core e una cartella project. In ogni cartella c'è la propria classe Controller. Fai in modo che queste classi appartengano a spazi dei nomi diversi. Nel file index.php crea oggetti della prima e della seconda classe.

Italiano
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesia日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Utilizziamo i cookie per il funzionamento del sito, l'analisi e la personalizzazione. I dati vengono elaborati in conformità con la Politica sulla privacy.
accetta tutto personalizza rifiuta