当前位置:首页 » 编程语言 » php的namespace

php的namespace

发布时间: 2023-02-25 22:30:38

A. php命名空间namespace \app为什么前面不能加\

使用的时候加\代表后面是“绝对路径的”命名空间
不使用/代表“相对路径的”命名空间
这是在使用的时候。

namespace xxx 是声明命名空间。命名空间名字自然不应该有\

B. php namespace下如何使用include '*.phar'包下的类

namespace a

include 'c.phar'

class b{
public function test{
$r=new c\d\foo();//

C. PHP 的use 命名空间 是什么意思

有点类似于 java 中的包机制,用来解决重名问题的,每一个命名空间都是独立的

给你举个例子吧,比如我现在想写两个类,名字都叫 Action

<?php

namespaceA;//定义命名空间

classAction{
//..
}


namespaceB;//定义第二个命名空间

classAction{
//..
}

use 关键字用于导入某个命名空间下的类, 如果我在B空间内想使用A空间中的Action类,就需要导入这个类才能使用(当然也可以指明空间前缀来使用)

namespaceB;

//在本空间中需要使用A空间中的Action类,使用use导入

useAAction;//导入,如果本空间中也有一个Action会出现错误,因为类重名了
useAActionasA_Action;//通过取别名的方式解决

$var=newA_Action;

D. php命名空间的引入问题 include namespace

include函数是引入文件

命名空间解决的是同一脚本下相同函数重名,不同的命名空间命名,相当于处于不同的模块,解决同一脚本下php函数重名的致命错误

  1. 你之前include引入的时候你的2个文件的相同函数处于不同命名空间下,就算在同一脚本也不会报错

  2. 看你最后段代码,你连续定义了2个命名空间,第1个就没用了,相当于你在namespace FooBarsubnamespace;命名空间下写了之后的代码,但是之后的代码处于namespace FooBarsubnamespace;下但是出现了2个相同名的函数,自然报错

  3. 你要区分命名空间和include就要先懂得他们代表的意思,从你的问题可以看出你不太懂命名空间,建议你网络或者看下php手册上的命名空间,自己捉摸比别人教理解得更加深刻

  4. 建议你把namespace FooBarsubnamespace;写到const FOO = 2;上面

热点内容
appendpython 发布:2025-07-08 15:22:54 浏览:655
安卓虚拟号码怎么设置 发布:2025-07-08 15:22:04 浏览:662
c语言爱心代码编译不出来 发布:2025-07-08 15:11:07 浏览:539
qq密码的数据库 发布:2025-07-08 14:54:50 浏览:5
多图床源码 发布:2025-07-08 14:46:36 浏览:572
sqldblinkoracle 发布:2025-07-08 14:44:50 浏览:606
ip重复访问服务器会报警吗 发布:2025-07-08 14:44:13 浏览:80
pro编译器 发布:2025-07-08 14:30:20 浏览:388
mysql如何导出存储过程 发布:2025-07-08 14:13:16 浏览:542
无效配置什么意思 发布:2025-07-08 14:04:54 浏览:765