WEB и WordPress новости, темы, плагины. Здесь мы делимся советами и лучшими решениями для сайтов.

Расширенное программирование PHP – Как использовать пространство имен в PHP

38

Для начинающих PHP концепции пространств имен кажутся довольно сложными. Но как только мы поймем основы пространств имен, это будет легко реализовать. В этой статье мы изучаем, как использовать пространство имен в PHP.

Как разработчик, вы получите представление о продвинутом программировании PHP при использовании пространств имен в своем коде.

PHP ввел пространства имен, чтобы избежать конфликтов имен между классами, функциями и константами.

Расширенное программирование PHP - Как использовать пространство имен в PHP

Когда мы работаем над большим проектом, программисты могут дать одинаковые имена классам, функциям или константам. Например, если два программиста определяют один и тот же класс A, тогда PHP выдает фатальную ошибку, например, невозможно повторно объявить класс A.

Определить пространство имен в PHP

Чтобы понять, когда нам следует определять пространство имен, мы напишем некоторый фрагмент кода.

Допустим, наш единственный разработчик написал приведенный ниже код в файл john.php. Этот код – всего лишь пример для объяснения пространств имен. Для простоты мы пишем функцию, класс и константы в одном файле.

function my_name() {
    echo "John";
}
 
class Programming {
    function my_language() {
        echo "PHP";
    }
}
 
const MYCONST = 1;

У нас есть еще один разработчик, который также использовал то же имя для класса, функций и констант, но для разных целей (выходов). Его файл называется sam.php.

function my_name() {
    echo "Sam";
}
 
class Programming {
    function my_language() {
        echo "Python";
    }
}
 
const MYCONST = 2;

Теперь, когда оба файла разработчика включены в наш проект, мы получим фатальную ошибку. Причина ошибки в том, что мы не можем использовать одно и то же имя дважды для класса или метода.

Здесь мы должны определить пространство имен.

В обоих файлах PHP мы можем определить пространства имен, как показано ниже.

<?php
namespace John;
 
function my_name() {
    echo "John";
}
 
class Programming {
    function my_language() {
        echo "PHP";
    }
}
 
const MYCONST = 1;
?>

А также

<?php
namespace Sam;
 
function my_name() {
    echo "Sam";
}
 
class Programming {
    function my_language() {
        echo "Python";
    }
}
 
const MYCONST = 2;
?>

После того, как мы добавим пространства имен к вышеуказанным файлам, ошибки PHP исчезнут.

Использование пространств имен

На этом этапе мы закончили с определением пространств имен. Следующий шаг – как использовать пространства имен в PHP.

Чтобы использовать метод, класс и константы обоих программистов, нам нужно написать следующий код.

<?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"
?>

Для доступа к классу или методам мы должны добавить перед ним имя пространства имен.

Мы надеемся, что вы понимаете, как использовать пространство имен в PHP. Если у вас есть вопросы или предложения, оставьте комментарий ниже.

Источник записи: artisansweb.net

Этот веб-сайт использует файлы cookie для улучшения вашего опыта. Мы предполагаем, что вы согласны с этим, но вы можете отказаться, если хотите. Принимаю Подробнее