Nimeruumide sissejuhatus OOP-s PHP-s
Kui PHP skripti käivitamisel on kaks klassi sama nimega, siis need satuvad konflikti, mis põhjustab fatal error. See tegelikult ei ole väga mugav, kuna tuleb pidevalt jälgida nimede unikaalsust.
Näiteks vaatleme järgmist olukorda:
teil on veebisait, kus on kasutajad
ja admin. Samal ajal kaustas users hoitakse
kasutajate klasse ja kaustas admin
- admini klasse.
Oletame, et nii kasutajate kui admini jaoks on vaja mingit
klassi Page, mis vastutab mõne
saidilehe eest. Samal ajal on kasutajate jaoks
oma klass ja admini jaoks - oma. Sellisel
juhul ootabki meid nimede konflikt.
Kõige lihtsam viis selle konflikti lahendamiseks
- anda klassidele erinevad nimed, näiteks
UsersPage ja AdminPage. See
tee viib aga järk-järgult väga pikkade klassinimede
ilmumiseni.
PHP-s on olemas ka teine viis probleemi lahendamiseks - nimeruumid. Asja iva on järgmine: iga klass võib kuuluda mõnesse nimeruumi ja samal ajal peab klasside nimede unikaalsus kehtima ainult selles nimeruumis.
See tähendab, et meie probleemi lahendamiseks saame
teha järgmist: viia üks klass Page
mingisse nimeruumi, näiteks
Users, ja teine klass Page
viia teise nimeruumi, näiteks
Admin.