


PHP namespace: detailed explanation of subspace and public space instances
The structure of a namespace is very similar to that of a file system. Folders can have subfolders, and namespaces can also define subspaces to describe the ownership relationships between each space. The previous chapter introduced What is a namespace? And the basic application of php namespace, here we start to understand the subspace and public space of the namespace.
Use the following example to illustrate what subspace is
For example, the two modules cart and order are both in the same shop project , expressing relationships through namespace subspaces.
The code is as follows:
<?php namespace shop\cart; //命名空间表示处于 shop 项目下的 cart class Test { } namespace shop\order; //命名空间表示处于 shop 项目下的 order class Test { //申明与上面空间相同的类 } $test =new Test(); //调用当前的类 $cart = new \shop\cart\Test(); //调用shop\cart空间的类 ?>
The subspace of the namespace can also define many levels, such as cn\my\www\shop. Multi-level subspace claims are often made using the company domain name inverted, followed by the project name. The advantage of this is that the domain name is not repeated on the Internet, there will be no namespaces with the same name on the Internet, and you can also identify which company's specific project it is. It has a strong advertising effect.
Public space in the namespace
The public space in the namespace is easy to understand. In fact, there are no methods, class libraries and class libraries that define the namespace. Constants belong to the public space by default, which explains that most of the code written in previous versions can run in PHP5.3 and later versions. In addition, after the code segment in the public space is introduced into a certain namespace, the code segment in the public space does not belong to any namespace. For example, declare a script file common.php, and declare functions and classes in the file.
The code is as follows:
<?php function fun(){ } class Demo{ } ?>
Create another PHP file and introduce this script file common.php in a namespace, but it can be Classes and functions do not belong to this namespace. If no other namespaces are defined in this script, its elements are always in the public space.
The code is as follows:
<?php namespace cn\my; include 'common.php'; //引入当前目录下的文件 $demo = new Demo; //出现致命错误:找不到 cn\my\Demo类 $demo = new \Demo(); //正确的方式 加上 \ var_dump(); // 错误,系统函数在公共空间 \var_dump(); // 正确,使用了 \ ?>
Note: The way to call the public space is to add \ directly in front of the element name. Otherwise, the PHP parser will think that the user is calling the element under the current space. In addition to custom elements, there are also elements that come with PHP, which all belong to the public space. In fact, public space functions and constants can be called normally without adding \, but in order to correctly distinguish the area where the element is located, it is recommended to add \ when calling the function.
The subspaces and public spaces of the namespace are introduced here. The next section brings you the three types of names and terms in the .
【Recommended related tutorials】
1. "php.cn Dugu Jiujian (4)-php video tutorial"
2 . Video tutorial: Namespace: Although we have the same name and the same gender, we belong to different time and space
3. Full set of tutorials on PHP programming from entry to mastery
The above is the detailed content of PHP namespace: detailed explanation of subspace and public space instances. For more information, please follow other related articles on the PHP Chinese website!

Hot AI Tools

Undresser.AI Undress
AI-powered app for creating realistic nude photos

AI Clothes Remover
Online AI tool for removing clothes from photos.

Undress AI Tool
Undress images for free

Clothoff.io
AI clothes remover

AI Hentai Generator
Generate AI Hentai for free.

Hot Article

Hot Tools

Notepad++7.3.1
Easy-to-use and free code editor

SublimeText3 Chinese version
Chinese version, very easy to use

Zend Studio 13.0.1
Powerful PHP integrated development environment

Dreamweaver CS6
Visual web development tools

SublimeText3 Mac version
God-level code editing software (SublimeText3)

Hot Topics



Solve PHP error: The specified namespace class was not found. When developing using PHP, we often encounter various error messages. One of the common errors is "The specified namespace class was not found". This error is usually caused by the imported class file not being properly namespace referenced. This article explains how to solve this problem and provides some code examples. First, let’s take a look at an example of a common error message: Fatalerror:UncaughtError:C

The F3 framework is a simple, easy-to-use, flexible and scalable PHPWeb framework. Its namespace (Namespace) mechanism provides us with a more standardized, more readable, and clearer code structure. In this article, we will explore how to use namespaces in the F3 framework. 1. What is a namespace? Namespaces are often used to solve the problem of naming conflicts in PHP. It can encapsulate one or more classes, functions or constants in a namespace, which is equivalent to adding a prefix to them. example

Redis is an open source, high-performance key-value storage database. When using Redis for data storage, we need to consider the design of the key namespace and expiration mechanism to maintain Redis performance and data integrity. This article will introduce the design ideas and implementation methods of Redis' namespace and expiration mechanism. 1. Redis namespace design ideas In Redis, keys can be set arbitrarily. In order to facilitate the management and distinction of different data types, Redis introduces the concept of namespace. Life

C++ is a widely used high-level programming language. It has high flexibility and scalability, but it also requires developers to strictly master its grammatical rules to avoid errors. One of the common errors is "use of undefined namespace". This article explains what this error means, why it occurs, and how to fix it. 1. What is the use of undefined namespace? In C++, namespaces are a way of organizing reusable code in order to keep it modular and readable. You can use namespaces to make functions with the same name

Example of new features in PHP8: How to use namespaces and codes to better organize the code structure? Introduction: PHP8 is an important version of the PHP programming language, which introduces many exciting new features and improvements. One of the most important new features is namespaces. Namespaces are a way to organize your code into a better structure that avoids conflicts between classes, functions, and constants with the same name. In this article, we’ll look at how to leverage namespaces and codes to better structure your PHP8 code

PHP is a highly flexible programming language with a wide range of applications. In PHP development, in order to avoid naming conflicts and improve the readability and maintainability of code, PHP introduces the concept of namespace. Namespaces help developers use the same class or function name in the same project without conflict. This article will introduce how to configure namespaces in PHP and common application examples. 1. How to configure the PHP namespace. Declare the namespace in PHP by using namespa at the top of the file.

New features of PHP5.3: How to use namespaces to solve class name conflicts Introduction: During the development of PHP, as projects become larger and more complex, class name conflicts also arise. In order to solve this problem, PHP5.3 version introduced the concept of namespace. Namespaces provide a way to organize related classes, functions, and constants together to avoid naming conflicts. This article will introduce in detail the concept of PHP namespaces and how to use namespaces to solve class name conflicts, with code examples.

How to resolve PHP namespace errors and generate corresponding error messages. PHP is a widely used server-side scripting language that is used to develop web applications. In PHP, namespace (Namespace) is a mechanism for managing and organizing code, which can avoid naming conflicts and improve code readability and maintainability. However, the complexity of namespace definition and use sometimes leads to errors. This article will introduce some methods to solve PHP namespace errors and generate corresponding error prompts. 1. Name space
