關(guān)于“php獲取namespace”的問題,小編就整理了【2】個(gè)相關(guān)介紹“php獲取namespace”的解答:
thinkphp命名空間有什么作用,怎么使用?在php里邊,同一個(gè)應(yīng)用請(qǐng)求里邊如果存在兩個(gè)方法(類名),他們的名字一樣(例如都是getName()),由于php本身語法規(guī)則的限制,系統(tǒng)是要報(bào)錯(cuò)的
解決方法:
① 把他們的名字改為不一樣的 例如 agetName() bgetName()
② 通過命名空間解決
Yii 框架為了避免名字重復(fù)引起問題,同步的類前邊都有 C 字樣
1. 簡(jiǎn)單應(yīng)用
a) 命名空間是虛擬的定義空間,不是真實(shí)存在目錄
b) 命名空間的分隔符都是反斜杠 \
c) 非限定名稱:getName() 獲得與其最近的命名空間的getName()
d) 限定名稱:beijing\getName() 相對(duì)方式 通過最近的命名空間定位beijing\getName()
e) 完全限定名稱: \beijing\getName() 直接在指定的命名空間獲得具體元素
f) 命名空間針對(duì):函數(shù)、類名、常量三者其作用,在命名空間里邊把這三種統(tǒng)稱為元素
2、別名和導(dǎo)入
a) 導(dǎo)入/引入 use
b) 使用一個(gè)元素,使用非限定名稱,在當(dāng)前最接近的空間里邊獲得元素
c) 如果當(dāng)前空間里邊沒有指定元素,也可以在導(dǎo)入的空間里邊尋找
3、公共空間
a) 第一種情況
b) 沒有使用namespace定義空間,當(dāng)前空間就是一個(gè)公共空間
PHP獲取域名的幾種方法?回答如下:1. 使用$_SERVER['HTTP_HOST']獲取當(dāng)前請(qǐng)求的域名。
2. 使用$_SERVER['SERVER_NAME']獲取當(dāng)前服務(wù)器的域名。
3. 使用$_SERVER['SERVER_ADDR']獲取當(dāng)前服務(wù)器的IP地址,再通過DNS查詢獲取對(duì)應(yīng)的域名。
4. 使用parse_url()函數(shù)解析當(dāng)前請(qǐng)求的URL,獲取其中的host部分。
5. 使用gethostbyaddr()函數(shù)獲取當(dāng)前服務(wù)器的IP地址對(duì)應(yīng)的域名。
代碼示例:
獲取當(dāng)前的域名:
echo $_SERVER['SERVER_NAME'];
//獲取來源網(wǎng)址,即點(diǎn)擊來到本頁的上頁網(wǎng)址
echo $_SERVER["HTTP_REFERER"];
$_SERVER['REQUEST_URI'];//獲取當(dāng)前域名的后綴
$_SERVER['HTTP_HOST'];//獲取當(dāng)前域名
dirname(__FILE__);//獲取當(dāng)前文件的物理路徑
dirname(__FILE__)."/../";//獲取當(dāng)前文件的上一級(jí)物理路徑
?>
獲取域名的方法可以有不同的實(shí)現(xiàn)方式,以下是幾種常見的PHP獲取域名的方法:
1. 通過$_SERVER['HTTP_HOST']獲取域名:
```php
$host = $_SERVER['HTTP_HOST'];
echo $host;
```
2. 通過$_SERVER['SERVER_NAME']獲取域名:
```php
$name = $_SERVER['SERVER_NAME'];
echo $name;
```
3. 通過$_SERVER['REQUEST_URI']獲取域名:
```php
$uri = $_SERVER['REQUEST_URI'];
$host = parse_url($uri, PHP_URL_HOST);
echo $host;
```
4. 通過$_SERVER['PHP_SELF']獲取域名:
```php
$self = $_SERVER['PHP_SELF'];
$host = rtrim(str_replace(basename($self), '', $_SERVER['HTTP_HOST'].$self), '/');
到此,以上就是小編對(duì)于“php獲取namespace”的問題就介紹到這了,希望介紹關(guān)于“php獲取namespace”的【2】點(diǎn)解答對(duì)大家有用。