Zaawansowane programowanie PHP – jak używać przestrzeni nazw w PHP
Dla początkujących PHP, koncepcje przestrzeni nazw wydają się dość skomplikowane. Ale kiedy już zrozumiemy podstawy przestrzeni nazw, łatwo ją zaimplementować. W tym artykule dowiemy się, jak używać przestrzeni nazw w PHP.
Jako programista poczujesz się jak w zaawansowanym programowaniu PHP, używając przestrzeni nazw w swoim kodzie.
PHP wprowadziło przestrzenie nazw, aby uniknąć konfliktów nazw między klasami, funkcjami i stałymi.
Kiedy pracujemy nad dużym projektem, może istnieć możliwość, że programiści nadadzą te same nazwy klasom, funkcjom lub stałym. Na przykład, jeśli 2 programistów zdefiniuje tę samą klasę A, PHP wygeneruje błąd krytyczny, taki jak nie można ponownie zadeklarować klasy A.
Zdefiniuj przestrzeń nazw w PHP
Aby zrozumieć, kiedy powinniśmy zdefiniować przestrzeń nazw, napiszemy kawałek kodu.
Powiedzmy, że nasz programista napisał poniższy kod w pliku john.php. Ten kod jest tylko przykładem wyjaśnienia przestrzeni nazw. Dla uproszczenia zapisujemy funkcję, klasę i stałe w tym samym pliku.
function my_name() {
echo "John";
}
class Programming {
function my_language() {
echo "PHP";
}
}
const MYCONST = 1;
Mamy innego programistę, który również użył tej samej nazwy dla klasy, funkcji i stałych, ale do innych celów (wyjścia). Jego nazwa pliku to sam.php.
function my_name() {
echo "Sam";
}
class Programming {
function my_language() {
echo "Python";
}
}
const MYCONST = 2;
Teraz, gdy oba pliki dewelopera zawarte w naszym projekcie dostaniemy błąd krytyczny. Powodem błędu jest to, że nie możemy dwukrotnie użyć tej samej nazwy dla klasy lub metody.
W tym miejscu powinniśmy zdefiniować przestrzeń nazw.
W obu plikach PHP możemy zdefiniować przestrzenie nazw jak poniżej.
<?php
namespace John;
function my_name() {
echo "John";
}
class Programming {
function my_language() {
echo "PHP";
}
}
const MYCONST = 1;
?>
I
<?php
namespace Sam;
function my_name() {
echo "Sam";
}
class Programming {
function my_language() {
echo "Python";
}
}
const MYCONST = 2;
?>
Po dodaniu przestrzeni nazw do powyższych plików błędy PHP znikną.
Korzystanie z przestrzeni nazw
Na tym etapie kończymy definiowanie przestrzeni nazw. Następnym krokiem jest wykorzystanie przestrzeni nazw w PHP.
Aby użyć metody, klasy i stałych obu programistów, musimy napisać następujący kod.
<?php
require_once('john.php');
require_once('sam.php');
Sammy_name(); //output "Sam"
Johnmy_name(); //output "John"
$a = new SamProgramming();
$a->my_language(); //output "Python"
$b = new JohnProgramming();
$b->my_language(); //output "John"
echo JohnMYCONST; //output "1"
echo SamMYCONST; //output "2"
?>
Aby uzyskać dostęp do klasy lub metod, musimy dołączyć przed nimi nazwę przestrzeni nazw.
Mamy nadzieję, że rozumiesz, jak używać przestrzeni nazw w PHP. Jeśli masz jakieś pytania lub sugestie, zostaw komentarz poniżej.