Pengenalan kepada Ruang Nama dalam OOP dalam PHP
Jika apabila skrip PHP dijalankan terdapat dua kelas dengan nama yang sama, mereka akan berkonflik, yang akan menyebabkan ralat fatal. Ini sebenarnya tidak begitu sesuai, kerana kita sentiasa perlu memantau keunikan nama.
Sebagai contoh, pertimbangkan situasi berikut:
anda mempunyai sebuah laman web yang mempunyai pengguna
dan admin. Pada masa yang sama, dalam folder users disimpan
kelas untuk pengguna, dan dalam folder admin
- kelas untuk admin.
Katakan kedua-dua untuk pengguna dan admin memerlukan suatu
kelas Page, yang bertanggungjawab untuk beberapa
halaman laman web. Pada masa yang sama, untuk pengguna akan ada
kelas mereka sendiri, dan untuk admin - kelas mereka sendiri. Dalam
kes ini, kita akan menghadapi konflik nama.
Cara paling mudah untuk menyelesaikan konflik ini
- adalah dengan memberikan nama yang berbeza untuk kelas, contohnya,
UsersPage dan AdminPage. Walau bagaimanapun, jalan
ini secara beransur-ansur membawa kepada kemunculan
nama kelas yang sangat panjang.
Dalam PHP terdapat juga cara lain untuk menyelesaikan masalah - ruang nama. Intinya adalah seperti berikut: setiap kelas boleh tergolong dalam beberapa ruang nama dan pada masa yang sama, keunikan nama kelas hanya perlu dipatuhi di dalam ruang nama tersebut.
Maksudnya, untuk menyelesaikan masalah kami, kami boleh
melakukan yang berikut: mengaitkan satu kelas Page
kepada beberapa ruang nama, contohnya,
Users, dan kelas kedua Page
dianggap sebagai milik ruang nama lain, contohnya,
Admin.