av一区二区在线观看_亚洲男人的天堂网站_日韩亚洲视频_在线成人免费_欧美日韩精品免费观看视频_久草视

您的位置:首頁技術文章
文章詳情頁

PHP基礎之命名空間1——命名空間概述及定義

瀏覽:82日期:2022-09-15 08:20:53
命名空間概述

什么是命名空間?從廣義上來說,命名空間是一種封裝事物的方法。在很多地方都可以見到這種抽象概念。例如,在操作系統中目錄用來將相關文件分組,對于目錄中的文件來說,它就扮演了命名空間的角色。具體舉個例子,文件?foo.txt?可以同時在目錄/home/greg?和?/home/other?中存在,但在同一個目錄中不能存在兩個?foo.txt?文件。另外,在目錄?/home/greg?外訪問?foo.txt?文件時,我們必須將目錄名以及目錄分隔符放在文件名之前得到?/home/greg/foo.txt。這個原理應用到程序設計領域就是命名空間的概念。

在PHP中,命名空間用來解決在編寫類庫或應用程序時創建可重用的代碼如類或函數時碰到的兩類問題:

用戶編寫的代碼與PHP內部的類/函數/常量或第三方類/函數/常量之間的名字沖突。為很長的標識符名稱(通常是為了緩解第一類問題而定義的)創建一個別名(或簡短)的名稱,提高源代碼的可讀性。

PHP 命名空間提供了一種將相關的類、函數和常量組合到一起的途徑。下面是一個說明 PHP 命名空間語法的示例:

Example #1 命名空間語法示例

<?php namespace myname; class MyClass {} function myfunction() {} const MYCONST = 1; $a = new MyClass; $c = new mynameMyClass; $a = strlen(’hi’); $d = namespaceMYCONST; $d = __NAMESPACE__ . ’MYCONST’; echo constant($d); ?>

PHP 在 5.3.0 以后的版本開始支持命名空間。

定義命名空間

雖然任意合法的PHP代碼都可以包含在命名空間中,但只有三種類型的代碼受命名空間的影響,它們是:類,函數和常量。

命名空間通過關鍵字namespace?來聲明。如果一個文件中包含命名空間,它必須在其它所有代碼之前聲明命名空間。

Example #1 聲明單個命名空間

<?php namespace MyProject; const CONNECT_OK = 1; class Connection { /* ... */ } function connect() { /* ... */ }?>

在聲明命名空間之前唯一合法的代碼是用于定義源文件編碼方式的?declare?語句。另外,所有非 PHP 代碼包括空白符都不能出現在命名空間的聲明之前:

Example #2 聲明單個命名空間

<html><?php namespace MyProject; // 致命錯誤 - 命名空間必須是程序腳本的第一條語句?>

另外,與PHP其它的語言特征不同,同一個命名空間可以定義在多個文件中,即允許將同一個命名空間的內容分割存放在不同的文件中。

定義子命名空間

與目錄和文件的關系很象,PHP 命名空間也允許指定層次化的命名空間的名稱。因此,命名空間的名字可以使用分層次的方式定義:

Example #1 聲明分層次的單個命名空間

<?php namespace MyProjectSubLevel; const CONNECT_OK = 1; class Connection { /* ... */ } function connect() { /* ... */ }?>

上面的例子創建了常量MyProjectSubLevelCONNECT_OK,類?MyProjectSubLevelConnection和函數?MyProjectSubLevelConnection。

標簽: PHP
相關文章:
主站蜘蛛池模板: 久久综合伊人 | 久久av.com| 国产精品av久久久久久毛片 | 欧美视频第三页 | 久久久www成人免费精品 | 欧美精品1区 | 国产美女精品视频免费观看 | 欧美在线一区二区三区四区 | 国产精品久久久久久久久免费相片 | 中文字幕国产精品 | 亚洲欧美一区二区三区在线 | 国产日韩欧美在线 | 精品视频一区二区在线观看 | 最新免费视频 | 在线一区观看 | 99在线免费观看视频 | 黄色片大全在线观看 | 国产电影精品久久 | 亚洲第一网站 | 人人干天天干 | 亚洲午夜小视频 | 国产日韩欧美在线 | 九九色综合 | 日韩综合一区 | 日本成人片在线观看 | 亚洲国产伊人 | 日韩视频在线观看中文字幕 | 欧美一级在线观看 | 免费观看成人鲁鲁鲁鲁鲁视频 | 成人片网址 | 欧美伊人久久久久久久久影院 | 天天躁日日躁狠狠的躁天龙影院 | 亚洲精品美女在线观看 | 超碰国产在线 | 国产高清在线精品 | 欧美一级二级视频 | 伊人春色成人网 | 亚洲免费网址 | 日本精品一区二区三区在线观看 | av在线播放网 | caoporn视频在线 |