Table des matières
PHP命名空间概念解析,php命名空间解析
 1. PHP中的命名空间是什么?
  2. PHP命名空间该如何理解?
  3. PHP命名空间有何实际应用?
 4. 一些tips
Maison php教程 php手册 PHP命名空间概念解析,php命名空间解析

PHP命名空间概念解析,php命名空间解析

Jun 16, 2016 am 09:16 AM
命名空间

PHP命名空间概念解析,php命名空间解析

 1. PHP中的命名空间是什么?

  什么是命名空间?“从广义上来说,命名空间是一种封装事物的方法。在很多地方都可以见到这种抽象概念。例如,在操作系统中目录用来将相关文件分组,对于目录中的文件来说,它就扮演了命名空间的角色。具体举个例子,文件 foo.txt 可以同时在目录/home/greg 和 /home/other 中存在,但在同一个目录中不能存在两个 foo.txt 文件。另外,在目录 /home/greg 外访问 foo.txt 文件时,我们必须将目录名以及目录分隔符放在文件名之前得到 /home/greg/foo.txt。这个原理应用到程序设计领域就是命名空间的概念。”——命名空间概述

  2. PHP命名空间该如何理解?

  从本质上讲,命名空间就是一个容器,这个容器内我们可以放入类、函数和变量,他们在同一命名空间内可以无条件相互访问。在命名空间之外,就必须引用或者导入其他命名空间,才能调用它们包含的这些项。

  命名空间跟shell中的文件目录的概念是一样一样的。在当前目录下可以直接用文件名访问所有文件,如果需要访问其他目录下的文件,就需要输入相对路径或绝对路径。
引用方式:

namespace foo;

 class Foo {   

         public function foo()   

             {        

                  return \top\namespace\bar\Bar::fuck();    

              }

             }
Copier après la connexion

  导入方式:

namespace foo; 

use top\namespace\bar\Bar; 

 class Foo {

        public function foo() 

            {        return Bar::fuck();  

            }

           }
Copier après la connexion

  导入就相当于将目的类复制一份到当前命名空间中。

  3. PHP命名空间有何实际应用?

  命名空间的存在是为了解决下面两个问题:

  1. 用户编写的代码与PHP内部的类/函数/常量或第三方类/函数/常量之间的名字冲突。

  2. 为很长的标识符名称(通常是为了缓解第一类问题而定义的)创建一个别名(或简短)的名称,提高源代码的可读性。 

 4. 一些tips

  1. 同一个空间下的类直接相互直接调用,属于一家。例如 Laravel 中的 PageController 类中可以直接写 Page::all() 这样的代码来调用 Page 这个model,因为他们俩都在顶级命名空间下。

  2. 若一个类存在于非顶级命名空间中,那么它只能在调用同样是当前命名空间下的其他类才不用“引用”或“导入”,它们属于一家。任何子命名空间都是另一个命名空间,另一个容器,没有除了容器之间关系之外的任何特殊关系。

  3. Laravel 采用 classmap 方式进行自动加载(autoload),PHP虽然有了命名空间这个高级特性,但是这只是逻辑关系,require 文件还是要有的。这个类和文件的对应关系就存在 /vendor/composer/autoload_classmap.php ,每次 composer dump-autoload 都会重新编译、生成。

Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn

Outils d'IA chauds

Undresser.AI Undress

Undresser.AI Undress

Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover

AI Clothes Remover

Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool

Undress AI Tool

Images de déshabillage gratuites

Clothoff.io

Clothoff.io

Dissolvant de vêtements AI

AI Hentai Generator

AI Hentai Generator

Générez AI Hentai gratuitement.

Article chaud

R.E.P.O. Crystals d'énergie expliqués et ce qu'ils font (cristal jaune)
2 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
Repo: Comment relancer ses coéquipiers
4 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
Hello Kitty Island Adventure: Comment obtenir des graines géantes
3 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
Combien de temps faut-il pour battre Split Fiction?
3 Il y a quelques semaines By DDD

Outils chauds

Bloc-notes++7.3.1

Bloc-notes++7.3.1

Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise

SublimeText3 version chinoise

Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1

Envoyer Studio 13.0.1

Puissant environnement de développement intégré PHP

Dreamweaver CS6

Dreamweaver CS6

Outils de développement Web visuel

SublimeText3 version Mac

SublimeText3 version Mac

Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Résoudre l'erreur PHP : la classe d'espace de noms spécifiée n'a pas été trouvée Résoudre l'erreur PHP : la classe d'espace de noms spécifiée n'a pas été trouvée Aug 18, 2023 pm 11:28 PM

Résoudre l'erreur PHP : la classe d'espace de noms spécifiée n'a pas été trouvée lors du développement avec PHP, nous rencontrons souvent divers messages d'erreur. L'une des erreurs courantes est "La classe d'espace de noms spécifiée n'a pas été trouvée". Cette erreur est généralement provoquée par le fait que le fichier de classe importé n’est pas correctement référencé dans l’espace de noms. Cet article explique comment résoudre ce problème et fournit quelques exemples de code. Tout d’abord, examinons un exemple de message d’erreur courant : Fatalerror:UncaughtError:C.

Idées de conception et méthodes de mise en œuvre de l'espace de noms Redis et du mécanisme d'expiration Idées de conception et méthodes de mise en œuvre de l'espace de noms Redis et du mécanisme d'expiration May 11, 2023 am 10:40 AM

Redis est une base de données de stockage clé-valeur open source et hautes performances. Lorsque nous utilisons Redis pour le stockage de données, nous devons prendre en compte la conception de l'espace de noms des clés et du mécanisme d'expiration afin de maintenir les performances et l'intégrité des données de Redis. Cet article présentera les idées de conception et les méthodes d'implémentation de l'espace de noms et du mécanisme d'expiration de Redis. 1. Idées de conception d'espace de noms Redis Dans Redis, les clés peuvent être définies arbitrairement. Afin de faciliter la gestion et la distinction des différents types de données, Redis introduit le concept d'espace de noms. vie

Comment utiliser l'espace de noms dans le framework F3 ? Comment utiliser l'espace de noms dans le framework F3 ? Jun 03, 2023 am 08:02 AM

Le framework F3 est un framework PHPWeb simple, facile à utiliser, flexible et extensible. Son mécanisme d'espace de noms (Namespace) nous offre une structure de code plus standardisée, plus lisible et plus claire. Dans cet article, nous explorerons comment utiliser les espaces de noms dans le framework F3. 1. Qu'est-ce qu'un espace de noms ? Les espaces de noms sont souvent utilisés pour résoudre le problème des conflits de noms en PHP. Ils peuvent encapsuler une ou plusieurs classes, fonctions ou constantes dans un espace de noms, ce qui équivaut à leur ajouter un préfixe. exemple

Erreur de syntaxe C++ : espace de noms non défini utilisé, comment y remédier ? Erreur de syntaxe C++ : espace de noms non défini utilisé, comment y remédier ? Aug 21, 2023 pm 09:49 PM

Le C++ est un langage de programmation de haut niveau largement utilisé. Il présente une grande flexibilité et évolutivité, mais il oblige également les développeurs à maîtriser strictement ses règles grammaticales pour éviter les erreurs. L'une des erreurs courantes est "l'utilisation d'un espace de noms non défini". Cet article explique ce que signifie cette erreur, pourquoi elle se produit et comment la corriger. 1. À quoi sert un espace de noms non défini ? En C++, les espaces de noms sont un moyen d'organiser du code réutilisable afin de le garder modulaire et lisible. Les fonctions portant le même nom peuvent être créées à l'aide d'espaces de noms

Exemple de nouveautés en PHP8 : Comment utiliser les espaces de noms et les codes pour mieux organiser la structure du code ? Exemple de nouveautés en PHP8 : Comment utiliser les espaces de noms et les codes pour mieux organiser la structure du code ? Sep 11, 2023 pm 12:22 PM

Exemple de nouveautés en PHP8 : Comment utiliser les espaces de noms et les codes pour mieux organiser la structure du code ? Introduction : PHP8 est une version importante du langage de programmation PHP, qui introduit de nombreuses nouvelles fonctionnalités et améliorations intéressantes. L’une des nouvelles fonctionnalités les plus importantes concerne les espaces de noms. Les espaces de noms sont un moyen d'organiser votre code dans une meilleure structure qui évite les conflits entre les classes, les fonctions et les constantes portant le même nom. Dans cet article, nous verrons comment exploiter les espaces de noms et les codes pour mieux structurer votre code PHP8.

Méthodes pour résoudre les erreurs d'espace de noms PHP et générer les invites d'erreur correspondantes Méthodes pour résoudre les erreurs d'espace de noms PHP et générer les invites d'erreur correspondantes Aug 07, 2023 pm 05:16 PM

Comment résoudre les erreurs d'espace de noms PHP et générer les messages d'erreur correspondants. PHP est un langage de script côté serveur largement utilisé pour développer des applications Web. En PHP, l'espace de noms est un mécanisme de gestion et d'organisation du code, qui peut éviter les conflits de noms et améliorer la lisibilité et la maintenabilité du code. Cependant, en raison de la complexité de la définition et de l'utilisation des espaces de noms, des erreurs se produisent parfois. Cet article présentera quelques méthodes pour résoudre les erreurs d'espace de noms PHP et générer les invites d'erreur correspondantes. 1. Espace de nom

Une odyssée de l'espace de noms : explorer le paradis modulaire de PHP Une odyssée de l'espace de noms : explorer le paradis modulaire de PHP Mar 10, 2024 am 09:04 AM

Espaces de noms : le paradis de la modularité Dans le développement de logiciels, la maintenabilité est un facteur crucial. À mesure que votre base de code continue de croître, l'organisation et l'encapsulation de votre code sont essentielles à la gestion de la complexité. Les espaces de noms en PHP sont conçus à cet effet. Concept d'espace de noms Un espace de noms est une collection d'identifiants logiquement liés. Il fournit un mécanisme pour organiser les classes, les fonctions et les constantes dans des domaines spécifiques. Les espaces de noms éliminent les conflits de noms en attribuant à chaque entité un nom unique, empêchant ainsi différentes classes ou fonctions d'avoir le même nom. La syntaxe de l'espace de noms est en PHP. L'espace de noms est défini à l'aide d'une barre oblique inverse () : namespaceMyProjectDatabase ;

Masterclass de chargement automatique PHP : devenez un expert en chargement de code Masterclass de chargement automatique PHP : devenez un expert en chargement de code Mar 02, 2024 pm 09:43 PM

Introduction au chargement automatique PHP Le chargement automatique PHP est un mécanisme qui permet à PHP de charger automatiquement les classes en cas de besoin sans inclure manuellement les fichiers. Cela simplifie grandement le développement de grandes applications et améliore la maintenabilité du code. Les espaces de noms et les espaces de noms à chargement automatique en PHP sont utilisés pour organiser le code. Lorsqu'une classe déclarée à l'aide d'un espace de noms doit être chargée, PHP effectuera un processus de chargement automatique. Le chargeur automatique est chargé de rechercher et de charger les fichiers de classe correspondants en fonction de l'espace de noms et du nom de classe. Utiliser Composer pour implémenter le chargement automatique Composer est l'outil standard de la communauté PHP pour la gestion des dépendances et le chargement automatique. Après avoir installé Composer, vous pouvez configurer le chargement automatique en suivant les étapes suivantes : //composer.JSO

See all articles