當前位置:首頁 » 編程語言 » 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;上面

熱點內容
手機如何設密碼鎖屏 發布:2025-07-10 14:17:06 瀏覽:803
java求絕對值 發布:2025-07-10 14:10:55 瀏覽:653
usb調試開關在哪裡安卓 發布:2025-07-10 13:59:55 瀏覽:78
資料庫維度 發布:2025-07-10 13:54:31 瀏覽:799
c語言位域的賦值 發布:2025-07-10 13:54:30 瀏覽:583
查成績密碼忘了怎麼辦 發布:2025-07-10 13:52:21 瀏覽:819
java死 發布:2025-07-10 13:51:30 瀏覽:996
車輛設施配置有哪些 發布:2025-07-10 13:42:28 瀏覽:820
java的成員 發布:2025-07-10 13:38:59 瀏覽:720
荒島餘生ftp 發布:2025-07-10 13:36:46 瀏覽:923