PSR-4命名空間前綴與基目錄

完全限定類名

完全相對(duì)類名是以\開頭的,比如\silai\controller\HomeController,不以\開頭的類名是相對(duì)類名,比如controller\ArticleController,那么相對(duì)指的是相對(duì)誰呢,相對(duì)用namespace關(guān)鍵字聲明的命名空間。

<?php
namespace silai;

// 實(shí)際上是指`\silai\controller\ArticleController`
controller\ArticleController;

// 這個(gè)是完全限定類
\foo\bar\User;

命名空間前綴

命名空間前綴是我們自己指定一的部分命名空間,比如這個(gè)命名空間,\silai\framework\controller,我們可以指定\silai這一部分作為一個(gè)前綴,也可以指定\silai\framework這一部分作為前綴,甚至指定\silai\framework\controller作為前綴。

基目錄

指定了命名空間前綴后,應(yīng)該再指定這個(gè)前綴的基目錄,可以指定一個(gè)或多個(gè)基目錄。比如上面的前綴\silai,指定它對(duì)應(yīng)目錄C:\silai;前綴\silai\framework對(duì)應(yīng)D:\project\silai\framework。

類的定義文件

如果命名空間前綴\silai對(duì)應(yīng)基目錄C:\silai,那么類\silai\Request應(yīng)該怎么定義,定義文件又應(yīng)該存放在哪里呢?定義如下:

<?php
namespace silai;

class Request
{
}

文件名應(yīng)該是Request.php,文件應(yīng)該存放在C:\silai\Request.php

對(duì)于類\silai\web\Response又該怎樣呢,首先這個(gè)類多了一個(gè)子命名空間web,那么默認(rèn)情況下這個(gè)類應(yīng)該放在C:\silai\web目錄下,如果不想放在這里,可以指定\silai\web命名空間前綴對(duì)應(yīng)其他目錄。

結(jié)束語

研究透徹PSR-4規(guī)范,是學(xué)習(xí)PHP的基礎(chǔ)。

可以掃描二維碼加小程序,觀看實(shí)現(xiàn)符合PSR-4自動(dòng)加載的視頻教程。

思籟教育Lite小程序
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • Spring Cloud為開發(fā)人員提供了快速構(gòu)建分布式系統(tǒng)中一些常見模式的工具(例如配置管理,服務(wù)發(fā)現(xiàn),斷路器,智...
    卡卡羅2017閱讀 136,554評(píng)論 19 139
  • 1. Java基礎(chǔ)部分 基礎(chǔ)部分的順序:基本語法,類相關(guān)的語法,內(nèi)部類的語法,繼承相關(guān)的語法,異常的語法,線程的語...
    子非魚_t_閱讀 34,687評(píng)論 18 399
  • 一. Java基礎(chǔ)部分.................................................
    wy_sure閱讀 4,011評(píng)論 0 11
  • Spring Boot 參考指南 介紹 轉(zhuǎn)載自:https://www.gitbook.com/book/qbgb...
    毛宇鵬閱讀 47,272評(píng)論 6 342
  • 在“三國無雙”的歷代游戲里,趙云總是最受玩家歡迎的人物,他的名字似乎就是“無雙”的代名詞,在人們心里,這長坂坡上縱...
    鬼鬼書生閱讀 2,050評(píng)論 4 11

友情鏈接更多精彩內(nèi)容