⊗ppOpNsInr 95 of 107 menu

Introducere în spațiile de nume în OOP în PHP

Dacă la rularea scriptului PHP există două clase cu același nume, acestea vor intra în conflict, ceea ce va duce la o eroare fatală. Acest lucru nu este foarte convenabil, deoarece trebuie să urmărim constant unicitatea numelor.

De exemplu, luați în considerare următoarea situație: aveți un site care are utilizatori și administratori. În același timp, în folderul users sunt stocate clasele pentru utilizatori, iar în folderul admin - clasele pentru administratori.

Să presupunem că atât pentru utilizatori, cât și pentru administratori este necesară o anumită clasă Page, care răspunde de unele pagini ale site-ului. În același timp, pentru utilizatori va fi propria lor clasă, iar pentru administratori - propria lor. În astfel de cazuri, suntem prinși în capcana conflictului de nume.

Cea mai simplă modalitate de a rezolva acest conflict - este de a da nume diferite claselor, de exemplu, UsersPage și AdminPage. Acest drum, totuși, duce treptat la apariția unor nume de clase foarte lungi.

În PHP există o altă cale de a rezolva problema - spațiile de nume. Esența este următoarea: fiecare clasă poate aparține unui anumit spațiu de nume și, în acest caz, unicitatea numelor claselor trebuie respectată doar în interiorul acestui spațiu.

Adică, pentru a ne rezolva problema, putem face următoarele: să atribuim o clasă Page unui spațiu de nume, de exemplu, Users, iar a doua clasă Page să o atribuim unui alt spațiu de nume, de exemplu, Admin.

Română
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Folosim cookie pentru funcționarea site-ului, analiză și personalizare. Prelucrarea datelor are loc în conformitate cu Politica de confidențialitate.
acceptă toate configurează respinge