Maison > développement back-end > tutoriel php > utiliser un mot clé en PHP

utiliser un mot clé en PHP

WBOY
Libérer: 2024-02-28 08:44:01
avant
804 Les gens l'ont consulté

l'éditeur php Strawberry vous donnera une compréhension approfondie du mot-clé use en PHP. Le mot-clé use joue un rôle important en PHP. Il est principalement utilisé pour importer des espaces de noms afin de rendre le code plus concis et lisible. Grâce au mot-clé use, des classes, des fonctions ou des constantes d'autres espaces de noms peuvent être introduites dans la portée actuelle, ce qui permet aux développeurs de les appeler plus facilement directement dans le code et améliore la maintenabilité et la lisibilité du code. Dans le processus d'apprentissage et d'utilisation de PHP, maîtriser l'utilisation du mot-clé use est crucial pour améliorer l'efficacité de la programmation et la qualité du code.


Introduction et implémentation de dans phpnamespace

Un espace de noms en PHP est une balise qui contient un bloc de code. Nous pouvons utiliser des espaces de noms pour accéder à des blocs de code spécifiques ailleurs dans le projet.

Par exemple, un espace de noms peut contenir des blocs de code tels que des classes, des fonctions, des constantes, etc.

Les espaces de noms résolvent principalement deux problèmes. Ce sont :

  • Les espaces de noms évitent les conflits de noms entre classes ou fonctions. Par exemple, une ambiguïté peut survenir lorsqu'une fonction définie par l'utilisateur correspond au nom d'une fonction PHP principale ou d'une fonction de bibliothèque.
  • Les espaces de noms permettent une meilleure communication et organisation entre les modules pendant le projet. Nous pouvons alias les composants pour une meilleure lisibilité.

Regardons un exemple du fonctionnement des espaces de noms. Créez une classe Greetings et écrivez-y un constructeur.

Afficher le message Hello everyone!在构造函数内部。将文件另存为 greetings.php.

Ensuite, en collaboration avec index.php 相同的目录中创建另一个文件。首先,使用 require 函数要求 greetings.php.

Ensuite, créez une variable $hello et instanciez l'instance de classe $hello 并将 Greetings 类实例实例化为 $hello = new Greetings sous la forme $hello = new Greetings.

Quand on propose index.php 文件时,它会给出一个错误,Class 'Greetings' not found. Pour résoudre ce problème, nous pouvons utiliser des espaces de noms.

Pour ce faire, créez l'espace de noms subodhproject dans le fichier greetings.php. Ensuite, dans le fichier index.php, utilisez l'espace de noms subodhproject avant la classe greetings.php 文件中创建命名空间 subodhproject。接下来,在 index.php 文件中,在类 Greetings 之前使用命名空间 subodhproject.

Cette fois, le message Hello everyone! s'affiche. C'est ainsi que vous utilisez les espaces de noms pour organiser les composants de votre projet.

Nous pouvons de la même manière utiliser des espaces de noms pour organiser les fonctions et les variables.

<code>
<code class="language-php hljs" data-lang="php"><span style="display:flex;"><span><span style="color:#008000;font-weight:bold">namespace</span> subodh\project;
</span></span><span style="display:flex;"><span>
</span></span><span style="display:flex;"><span><span style="color:#008000;font-weight:bold">class</span> <span style="color:#00f;font-weight:bold">Greetings</span>{
</span></span><span style="display:flex;"><span><span style="color:#008000;font-weight:bold">public</span> <span style="color:#008000;font-weight:bold">funct<strong class="keylink">io</strong>n</span> __construct(){
</span></span><span style="display:flex;"><span><span style="color:#008000;font-weight:bold">print</span>(<span style="color:#ba2121">"Hello everyone!"</span>)<span style="color:#666">.</span><span style="color:#ba2121">"<br>"</span>;
</span></span><span style="display:flex;"><span> }
</span></span><span style="display:flex;"><span>}
</span></span><span style="display:flex;"><span>
</span></span><span style="display:flex;"><span><span style="color:#008000;font-weight:bold">function</span> <span style="color:#00f">greet</span>(){
</span></span><span style="display:flex;"><span><span style="color:#008000;font-weight:bold">print</span>(<span style="color:#ba2121">"<strong class="keylink">Go</strong>od Morning!"</span>)<span style="color:#666">.</span><span style="color:#ba2121">"<br>"</span>;
</span></span><span style="display:flex;"><span>}
</span></span><span style="display:flex;"><span>
</span></span><span style="display:flex;"><span><span style="color:#008000;font-weight:bold">const</span> <span style="color:#800">greeting</span> <span style="color:#666">=</span> <span style="color:#ba2121">"have a nice day"</span><span style="color:#666">.</span><span style="color:#ba2121">"<br>"</span>;
</span></span></code></code>
Copier après la connexion
<code>
<code class="language-php hljs" data-lang="php"><span style="display:flex;"><span><span style="color:#008000;font-weight:bold">require</span> <span style="color:#ba2121">'greetings.php'</span>;
</span></span><span style="display:flex;"><span><span style="color:#19177c">$hello</span> <span style="color:#666">=</span> <span style="color:#008000;font-weight:bold">new</span> subodh\project\Greetings;
</span></span><span style="display:flex;"><span>subodh\project\greet();
</span></span><span style="display:flex;"><span><span style="color:#008000;font-weight:bold">echo</span> subodh\project\greeting;
</span></span></code></code>
Copier après la connexion

Résultat :

<code>
<code class="language-text hljs" data-lang="text"><span style="display:flex;"><span>Hello everyone!
</span></span><span style="display:flex;"><span>Good Morning!
</span></span><span style="display:flex;"><span>have a nice day
</span></span></code></code>
Copier après la connexion
Copier après la connexion

Implémentation de usenamespace et

en PHP use 关键字来导入 PHP 中的 namespace On peut utiliser le mot-clé

en PHP pour importer le

en PHP et lui donner un alias. Par conséquent, nous pouvons remplacer les espaces de noms longs par des alias courts.

Cela améliore la lisibilité du code. Nous pouvons utiliser des alias pour représenter les espaces de noms. use

Tout d’abord, nous utiliserons le mot-clé

pour créer un alias pour l’espace de noms de l’exemple de code écrit ci-dessus. index.php 文件中,写入 use 关键字,将 greetings.php 文件中写入的命名空间导入为 use subodhproject

Par exemple, dans le fichier index.php, écrivez le mot-clé

et importez l'espace de noms écrit dans le fichier greetings.php sous la forme use subodhproject. project

Cela signifie que nous pouvons désormais utiliser

pour accéder aux classes, fonctions et constantes comme le montre l'exemple ci-dessous.

<code>
<code class="language-php hljs" data-lang="php"><span style="display:flex;"><span><span style="color:#008000;font-weight:bold">require</span> <span style="color:#ba2121">'greetings.php'</span>;
</span></span><span style="display:flex;"><span><span style="color:#008000;font-weight:bold">use</span> subodh\project;
</span></span><span style="display:flex;"><span>
</span></span><span style="display:flex;"><span><span style="color:#19177c">$hello</span> <span style="color:#666">=</span> <span style="color:#008000;font-weight:bold">new</span> project\Greetings;
</span></span><span style="display:flex;"><span>project\greet();
</span></span><span style="display:flex;"><span><span style="color:#008000;font-weight:bold">echo</span> project\greeting;
</span></span></code></code>
Copier après la connexion

Nous pouvons également créer des alias personnalisés comme suit. use 关键字导入类、函数和常量。我们可以在类的 use

<code>
<code class="language-php hljs" data-lang="php"><span style="display:flex;"><span><span style="color:#008000;font-weight:bold">require</span> <span style="color:#ba2121">'greetings.php'</span>;
</span></span><span style="display:flex;"><span>
</span></span><span style="display:flex;"><span><span style="color:#008000;font-weight:bold">use</span> subodh\project <span style="color:#008000;font-weight:bold">as</span> pr;
</span></span><span style="display:flex;"><span>
</span></span><span style="display:flex;"><span><span style="color:#19177c">$hello</span> <span style="color:#666">=</span> <span style="color:#008000;font-weight:bold">new</span> pr\Greetings;
</span></span><span style="display:flex;"><span>pr\greet();
</span></span><span style="display:flex;"><span><span style="color:#008000;font-weight:bold">echo</span> pr\greeting;
</span></span></code></code>
Copier après la connexion
Nous pouvons également importer des classes, des fonctions et des constantes en utilisant le mot-clé

. Nous pouvons écrire l'espace de noms après le mot-clé

de la classe.

use 关键字之后分别写关键字 functionconstant Tout d’abord, nous devons ajouter le nom de la classe à la fin de l’espace de noms. On peut alors accéder directement au cours.

Dans le cas des fonctions et des constantes, il faut écrire respectivement les mots-clés function et constant après le mot-clé

.

Après cela, nous pouvons écrire l'espace de noms, les noms de fonctions et de constantes supplémentaires. Un exemple est présenté ci-dessous.

<code>
<code class="language-php hljs" data-lang="php"><span style="display:flex;"><span><span style="color:#008000;font-weight:bold">use</span> subodh\project\Greetings;
</span></span><span style="display:flex;"><span><span style="color:#19177c">$hello</span> <span style="color:#666">=</span> <span style="color:#008000;font-weight:bold">new</span> Greetings;
</span></span><span style="display:flex;"><span>
</span></span><span style="display:flex;"><span><span style="color:#008000;font-weight:bold">use</span> <span style="color:#008000;font-weight:bold">function</span> <span style="color:#00f">subodh\project\greet</span>;
</span></span><span style="display:flex;"><span>greet();
</span></span><span style="display:flex;"><span>
</span></span><span style="display:flex;"><span><span style="color:#008000;font-weight:bold">use</span> <span style="color:#008000;font-weight:bold">const</span> <span style="color:#800">subodh\project\greeting</span>;
</span></span><span style="display:flex;"><span><span style="color:#008000;font-weight:bold">echo</span> greeting;
</span></span></code></code>
Copier après la connexion
Le résultat de toutes les méthodes ci-dessus est le même.

Résultat : use
<code>
<code class="language-text hljs" data-lang="text"><span style="display:flex;"><span>Hello everyone!
</span></span><span style="display:flex;"><span>Good Morning!
</span></span><span style="display:flex;"><span>have a nice day
</span></span></code></code>
Copier après la connexion
Copier après la connexion

Regroupez plusieurs classes en utilisant use en PHP

Comme introduit dans PHP7, nous pouvons regrouper des classes, des fonctions et des constantes lors de l'utilisation du mot-clé use.

Cette fonctionnalité empêche les utilisations multiples du mot-clé vehicle.php et rend le code plus propre et plus facile à comprendre.

Le nombre de lignes de code est également réduit et la réutilisabilité est maintenue. Considérons le fichier CarMotorcycle 以及构造函数。此外,我们还创建了命名空间 subodhproject suivant.

Il contient deux classes, use.

<code>
<code class="language-php hljs" data-lang="php"><span style="display:flex;"><span><span style="color:#008000;font-weight:bold">namespace</span> subodh\project;
</span></span><span style="display:flex;"><span>
</span></span><span style="display:flex;"><span><span style="color:#008000;font-weight:bold">class</span> <span style="color:#00f;font-weight:bold">Car</span>{
</span></span><span style="display:flex;"><span><span style="color:#008000;font-weight:bold">public</span> <span style="color:#008000;font-weight:bold">function</span> __construct(){
</span></span><span style="display:flex;"><span><span style="color:#008000;font-weight:bold">print</span>(<span style="color:#ba2121">"This is Car class"</span>)<span style="color:#666">.</span><span style="color:#ba2121">"<br>"</span>;
</span></span><span style="display:flex;"><span> }
</span></span><span style="display:flex;"><span>}
</span></span><span style="display:flex;"><span>
</span></span><span style="display:flex;"><span><span style="color:#008000;font-weight:bold">class</span> <span style="color:#00f;font-weight:bold">Motorcycle</span>{
</span></span><span style="display:flex;"><span><span style="color:#008000;font-weight:bold">public</span> <span style="color:#008000;font-weight:bold">function</span> __construct(){
</span></span><span style="display:flex;"><span><span style="color:#008000;font-weight:bold">print</span>(<span style="color:#ba2121">"This is Motorcycle class"</span>)<span style="color:#666">.</span><span style="color:#ba2121">"<br>"</span>;
</span></span><span style="display:flex;"><span> }
</span></span><span style="display:flex;"><span>}
</span></span></code></code>
Copier après la connexion

Nous pouvons importer les deux classes dans le même espace de noms en utilisant une fois le mot-clé

. Nous pouvons inclure le nom de la classe entre accolades après l’espace de noms. 🎜 🎜 Nous pouvons même créer un alias pour cette classe. Des virgules séparent les noms de classe. 🎜

例如,在 use 关键字之后写入命名空间 subodh\project\{}。然后,在花括号内,写上 Car 类,并在逗号后写摩托车类。

最后,为 Motorcycle 类写别名 bike。现在,我们可以通过使用 new 关键字实例化 Carbike 来创建这些类的对象。

<code>
<code class="language-php hljs" data-lang="php"><span style="display:flex;"><span><span style="color:#008000;font-weight:bold">require</span>(<span style="color:#ba2121">'vehicle.php'</span>);
</span></span><span style="display:flex;"><span><span style="color:#008000;font-weight:bold">use</span> subodh\project\{Car, Motorcycle <span style="color:#008000;font-weight:bold">as</span> bike};
</span></span><span style="display:flex;"><span><span style="color:#19177c">$car</span> <span style="color:#666">=</span> <span style="color:#008000;font-weight:bold">new</span> Car;
</span></span><span style="display:flex;"><span><span style="color:#19177c">$bike</span> <span style="color:#666">=</span> <span style="color:#008000;font-weight:bold">new</span> bike;
</span></span></code></code>
Copier après la connexion

输出:

<code>
<code class="language-text hljs" data-lang="text"><span style="display:flex;"><span>This is Car class
</span></span><span style="display:flex;"><span>This is Motorcycle class
</span></span></code></code>
Copier après la connexion

因此,我们可以使用 use 关键字对 PHP 命名空间中的类进行分组。我们也可以类似地对函数和常量进行分组。

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Étiquettes associées:
source:lsjlt.com
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
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal