Home > Backend Development > PHP Problem > What is a namespace in PHP? How to use namespaces?

What is a namespace in PHP? How to use namespaces?

慕斯
Release: 2023-03-10 19:16:01
Original
2115 people have browsed it

The previous article introduced you to "PHP Advanced Syntax-What is Trait?" How do we use it? What are his characteristics? 》, this article continues to introduce to you what is a namespace in PHP? How to use namespaces?

What is a namespace in PHP? How to use namespaces?

Namespace:

If the Person class appears in a file, can another Person class be defined?

The namespace is the folder.

You can have the same class name under different namespaces

namespace: namespace

use: use

First we create a new file. We have defined a person class in the file, so can we still see a person class? We take the code as an example for debugging. The code is as follows:

<?php
   class person
   {
   }
   
   class person
   {
   }
?>
Copy after login

The results are as follows:

What is a namespace in PHP? How to use namespaces?

We base The results show that the code reports an error that the person class cannot be defined repeatedly. This is an obvious error. We are not allowed to have two identical files in the same file, but if we want to have the same class name, we can reference the namespace. the concept of.

Next we start using namespaces. For the code we just wrote, we wrote the first person under one namespace, and I wrote the second person under another namespace. This Then we can define two person classes at the same time. The namespace is written as follows: In addition, we need to give the namespace a name, so the code we just wrote is in the namespace we just defined. Inside, executing this code will still report an error, so we need to define a namespace for the second person class, and then we define a method (function) in the first class and the second class respectively. At this time we define Two classes have the same name, but are not in the same namespace. The specific code is as follows:

<?php
namespace love;
   class Person
   {
     function pome()
     {
       echo &#39;我明白你会来,所以我等<br />&#39;;
     }
   }
   namespace like;
   class Person
   {
     function pome()
     {
     echo &#39;不须耳鬓常厮伴,一笑低头意已倾<br />&#39;;
   }
   }
?>
Copy after login

The result is as follows:

What is a namespace in PHP? How to use namespaces?

The result display is correct; no error is reported;

If we want to output the code content we just wrote, we need to create a new person object, otherwise we will not know which one is output person class, the code is as follows:

 $ming = new Person();
   $ming ->pome();
Copy after login

The result is as follows:

What is a namespace in PHP? How to use namespaces?

Note: When we create the object, we name it there space;

If we want to output the contents of the first namespace, we need to write like this:

$niu = new \love\Person();
  $niu->pome();
Copy after login

The result is as follows:

What is a namespace in PHP? How to use namespaces?

1. The naming of the first namespace: there cannot be any code in front of it

2. Root space and subspace

Root space

Your hello space is actually

\hello .
Copy after login

Your world space is actually

\world
Copy after login

You are in the world space

hello\Dog ===> world\hello\Dog
Copy after login

3. use use, as use

use \hello\test\Dog as SmallDog;
use
\world\Dog as BigDog;
Copy after login

Recommended learning: php video tutorial

The above is the detailed content of What is a namespace in PHP? How to use namespaces?. For more information, please follow other related articles on the PHP Chinese website!

Related labels:
source:php.cn
Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template