⊗ppOpNsSn 96 of 107 menu

A névterek szintaxisa az OOP-ben PHP-ben

Ahhoz, hogy egy osztályhoz névteret rendeljünk, annak a fájlnak az első sorába kell írnunk, amelyben ez az osztály található, a namespace parancsot, majd utána szóközzel elválasztva - ennek a névtérnek a nevét.

Ha egy osztály egy névtérhez tartozik, akkor az osztály objektumának létrehozásához nem csak az osztály nevét, hanem a névterét is meg kell adni, visszaperjellel elválasztva. Nézzük meg egy példán.

Tegyük fel, hogy van egy Page osztályunk, amely nem tartozik egyetlen névtérhez sem. Ekkor ennek az osztálynak az objektumát a következőképpen hozzuk létre:

<?php $page = new Page; ?>

Tegyük fel most, hogy ez az osztály a Admin névtérhez tartozik. Ebben az esetben ennek az osztálynak az objektumát már így fogjuk létrehozni:

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

Válasszuk szét a felhasználók és az adminok osztályait különböző névterekbe, hogy elkerüljük a fent leírt osztályütközéseket.

A Page osztályhoz a /admin/page.php fájlban adjuk meg a Admin névteret:

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

A Page osztályhoz pedig a /users/page.php fájlban adjuk meg a Users névteret:

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

Most pedig a /index.php fájlban hozzunk létre objektumot az egyik és a másik Page osztályból:

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

Tegyük fel, hogy van egy core mappája és egy project mappája. Mindkét mappában van saját Controller osztály. Állítsa be úgy, hogy ezek az osztályok különböző névterekhez tartozzanak. A index.php fájlban hozzon létre objektumokat az egyik és a másik osztályból.

Magyar
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
A weboldal működéséhez, elemzéshez és személyre szabáshoz sütiket használunk. Az adatfeldolgozás a Adatvédelmi irányelvek szerint történik.
összes elfogadása beállítás elutasítás