⊗ppOpNsSn 96 of 107 menu

Sintaxis de espacios de nombres en POO en PHP

Para asignar un espacio de nombres a una clase, es necesario escribir como primera línea del archivo en el que se almacena esta clase el comando namespace, y después de él, separado por un espacio, el nombre de este espacio.

Si una clase pertenece a algún espacio de nombres, entonces para crear un objeto de la clase será necesario especificar no solo el nombre de la clase, sino también su espacio de nombres, separados por una barra invertida. Veamos un ejemplo.

Supongamos que tenemos una clase Page, que no pertenece a ningún espacio de nombres. Entonces, el objeto de esta clase lo crearemos de la siguiente manera:

<?php $page = new Page; ?>

Supongamos ahora que esta clase pertenece al espacio de nombres Admin. En este caso, el objeto de esta clase lo crearemos de esta manera:

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

Separemos las clases para usuarios y las clases para administradores en diferentes espacios de nombres, para evitar los conflictos de clases descritos anteriormente.

Para la clase Page del archivo /admin/page.php indicaremos el espacio de nombres Admin:

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

Y para la clase Page del archivo /users/page.php indicaremos el espacio de nombres Users:

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

Ahora, en el archivo /index.php creemos un objeto de una y otra clase Page:

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

Supongamos que tienes una carpeta core y una carpeta project. En cada una de las carpetas hay su propia clase Controller. Haz que estas clases pertenezcan a diferentes espacios de nombres. En el archivo index.php crea objetos de una y otra clase.

Español
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Usamos cookies para el funcionamiento del sitio, análisis y personalización. El procesamiento de datos se realiza de acuerdo con la Política de privacidad.
aceptar todas configurar rechazar