iis服务器助手广告广告
返回顶部
首页 > 资讯 > 后端开发 > PHP编程 >PHP 中的 use 关键字
  • 868
分享到

PHP 中的 use 关键字

2024-02-27 21:02:48 868人浏览 泡泡鱼
摘要

本文将介绍 PHP 中的 use 和 namespace。然后,我们将通过创建一个小项目来完成这些关键字的实现。 php 中 namespace 的介绍和实现 PHP 中的命名空间是一个包含代

本文将介绍 PHP 中的 usenamespace。然后,我们将通过创建一个小项目来完成这些关键字的实现。


phpnamespace 的介绍和实现

PHP 中的命名空间是一个包含代码块的标签。我们可以使用命名空间从项目中的其他位置访问特定的代码块。

例如,命名空间可以包含类、函数、常量等代码块。

命名空间主要解决两个问题。这些都是:

  • 命名空间避免了类或函数之间的名称冲突。例如,当用户定义的函数与核心 PHP 函数或库函数的名称匹配时,可能会出现歧义。
  • 命名空间允许在项目期间模块之间更好的通信和组织。我们可以给组件起别名以获得更好的可读性。

让我们看一个命名空间如何工作的例子。创建一个类 Greetings 并在其中编写一个构造函数。

显示消息 Hello everyone!在构造函数内部。将文件另存为 greetings.php

接下来,在与 index.php 相同的目录中创建另一个文件。首先,使用 require 函数要求 greetings.php

然后,创建一个变量 $hello 并将 Greetings 类实例实例化为 $hello = new Greetings

当我们提供 index.php 文件时,它会给出一个错误,Class 'Greetings' not found。为了解决这个问题,我们可以使用命名空间。

为此,在 greetings.php 文件中创建命名空间 subodh\project。接下来,在 index.php 文件中,在类 Greetings 之前使用命名空间 subodh\project

这一次,消息 Hello everyone!被显示。这就是如何使用命名空间来组织项目中的组件。

我们也可以类似地使用命名空间来组织函数和变量。


namespace subodh\project;

class Greetings{
    public function __construct(){
        print("Hello everyone!")."<br>";
 }
}

function greet(){
    print("Good Morning!")."<br>";
}

const greeting = "have a nice day"."<br>";

require 'greetings.php';
$hello = new subodh\project\Greetings;
subodh\project\greet();
echo subodh\project\greeting;

输出:


Hello everyone!
Good Morning!
have a nice day

在 PHP 中实现 usenamespace

我们可以使用 PHP 中的 use 关键字来导入 PHP 中的 namespace 并为其赋予别名。因此,我们可以用短别名替换长命名空间。

这提高了代码的可读性。我们可以使用别名来表示命名空间。

首先,我们将使用 use 关键字来创建上面编写的示例代码的命名空间的别名。

例如,在 index.php 文件中,写入 use 关键字,将 greetings.php 文件中写入的命名空间导入为 use subodh\project

这意味着现在我们可以使用 project 来访问类、函数和常量,如下例所示。


require 'greetings.php';
use subodh\project;

$hello = new project\Greetings;
project\greet();
echo project\greeting;

我们还可以如下创建自定义别名。


require 'greetings.php';

use subodh\project as pr;

$hello = new pr\Greetings;
pr\greet();
echo pr\greeting;

我们还可以使用 use 关键字导入类、函数和常量。我们可以在类的 use 关键字之后写命名空间。

首先,我们应该在命名空间的末尾附加类名。然后,我们可以直接访问该类。

在函数和常量的情况下,我们应该在 use 关键字之后分别写关键字 functionconstant

之后,我们可以编写命名空间,附加函数和常量的名称。示例如下所示。


use subodh\project\Greetings;
$hello = new Greetings;

use function subodh\project\greet;
greet();

use const subodh\project\greeting;
echo greeting;

上述所有方法的输出都是相同的。

输出:


Hello everyone!
Good Morning!
have a nice day

在 PHP 中使用 use 对多个类进行分组

正如 PHP7 中介绍的那样,我们可以在使用 use 关键字时对类、函数和常量进行分组。

此功能可防止 use 关键字的多次使用,并使代码更简洁易懂。

代码的行数也减少了,并且保持了可重用性。让我们考虑以下 vehicle.php 文件。

它包含两个类,CarMotorcycle 以及构造函数。此外,我们还创建了命名空间 subodh\project


namespace subodh\project;

class Car{
    public function __construct(){
        print("This is Car class")."<br>";
 }
}

class Motorcycle{
    public function __construct(){
        print("This is Motorcycle class")."<br>";
 }
}

我们可以使用一次 use 关键字将两个类作为同一个命名空间导入。我们可以在命名空间后面的花括号中包含类名。

我们甚至可以为该类创建一个别名。逗号分隔类名。

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

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


require('vehicle.php');
use subodh\project\{Car, Motorcycle as bike};
$car = new Car;
$bike = new bike;

输出:


This is Car class
This is Motorcycle class

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

--结束END--

本文标题: PHP 中的 use 关键字

本文链接: https://www.lsjlt.com/news/569158.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • PHP 中的 use 关键字
    本文将介绍 PHP 中的 use 和 namespace。然后,我们将通过创建一个小项目来完成这些关键字的实现。 PHP 中 namespace 的介绍和实现 PHP 中的命名空间是一个包含代...
    99+
    2024-02-27
  • use关键字在PHP中的使用示例
    这篇文章主要介绍了use关键字在PHP中的使用示例,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。1.用于命名空间的引用<phpnamespace admin\...
    99+
    2023-06-14
  • SQL中use关键字的作用是什么
    在SQL中,USE关键字用来指定要使用的数据库。通过使用USE关键字,可以切换当前会话所操作的数据库,使得后续的SQL语句都会在指定...
    99+
    2024-04-09
    SQL
  • php中final关键字的作用
    final关键字在php中发挥以下作用:类声明:阻止类被继承;方法声明:阻止方法被覆盖;作用包括:增强安全性、提高性能、强制设计原则、避免不必要的继承。 php中final关键字的作用...
    99+
    2024-04-27
  • php中function关键字怎么用
    今天小编给大家分享一下php中function关键字怎么用的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。function是p...
    99+
    2023-06-29
  • mysql中的关键字
    MySQL是一种流行的开源关系型数据库管理系统,包含许多关键字,这些关键字在MySQL中具有特殊的含义,用于执行各种数据库操作。以下是MySQL中的一些关键字及其用法: ADD:用于向现有表添加一列或...
    99+
    2023-09-05
    mysql 数据库 sql
  • PHP中final关键字如何使用
    今天就跟大家聊聊有关PHP中final关键字如何使用,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。在PHP中类的继承是使用最多的一个编程特性,我们可以创建一个基类(父类)然后在这其中...
    99+
    2023-06-17
  • php中final关键字的功能有哪些
    final关键字可以用来修饰类,表示该类不能被继承,即该类是最终类。 final关键字可以用来修饰类中的方法,表示该方法不能...
    99+
    2024-04-02
  • PHP中ECHO关键字的功能及示例
    PHP中ECHO关键字的功能及示例 在PHP中,echo 是一个非常常用的关键字,用于向浏览器输出内容。echo 可以输出一个或多个字符串,也可以输出变量、数组等内容。下面将介绍ech...
    99+
    2024-04-02
  • PHP中global关键字的作用是什么
    本篇文章为大家展示了PHP中global关键字的作用是什么,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。PHP关键字global如果用在function内部,则说明这个function内用的这个变量...
    99+
    2023-06-17
  • php中clone关键字的用法是什么
    在PHP中,clone关键字用于创建一个对象的深拷贝,即创建一个新的对象并将原对象的属性复制到新对象中。这意味着新对象和原对象是独立...
    99+
    2024-04-02
  • PHP中如何响应打包的关键字?
    PHP作为一种广泛使用的编程语言,为Web应用程序开发提供了丰富的功能。在这个过程中,打包的关键字是一个非常有用的概念。打包的关键字可以让开发人员更容易地组织和管理PHP代码。本文将介绍PHP中如何响应打包的关键字,并提供一些实用的演示代码...
    99+
    2023-08-21
    响应 打包 关键字
  • php中final关键字的用法是什么
    在PHP中,final关键字用于修饰类、方法或属性,表示它们不能被继承或覆盖。对于一个final修饰的类,不能被其他类继承;对于一个...
    99+
    2024-04-02
  • php替换关键字的示例
    这篇文章将为大家详细讲解有关php替换关键字的示例,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。php替换关键字的方法:首先创建一个PHP示例文件;然后通过“str_replace(find,replac...
    99+
    2023-06-08
  • Python中有哪些关键字及关键字的用法
    目录Python有哪些关键字1.and , or2.del3.from4.golbal5.with6.while, for…in…7.assert8.pa...
    99+
    2023-02-04
    python关键字用法 python关键字
  • php中clone关键字的功能有哪些
    在PHP中,clone关键字用于创建一个对象的副本。当使用clone关键字时,原始对象的所有属性将被复制到新的对象中,但是它们是独立...
    99+
    2024-04-02
  • php中定义函数的关键字是什么字符
    php中定义函数的关键字为function。它指定了函数名、参数列表和函数体:function 函数名 (参数列表):定义函数名和参数。{}:函数体中包含要执行的代码。return:可选...
    99+
    2024-04-26
  • java中的volatile关键字
    目录1.volatile实现可见性的原理是什么?2.演示volatile的可见性1.volatile实现可见性的原理是什么? 有volatile变量修饰的共享变量进行写操作的时候汇编...
    99+
    2024-04-02
  • Java中的this关键字
    介绍 this关键字用于引用当前实例,在Java语言中,当创建一个对象后,Java虚拟机就会为其分配一个指向对象本身的指针,这个指针就是“this”。 Java关键字this只能用于方法方法体内,在类...
    99+
    2023-10-20
    java 开发语言
  • 如何利用PHP7的namespace和use关键字组织代码的结构?
    如何利用PHP7的namespace和use关键字组织代码的结构?在编写大型项目时,代码的结构化和组织是非常重要的。PHP7引入了namespace和use关键字,帮助我们更好地管理代码的命名空间,提高代码的可读性和可维护性。本文将介绍如何...
    99+
    2023-10-22
    PHP NameSpace use
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作