配置元件主要包括:
urlmanager官方文件介紹
,從官網文件看到,urlmanager是乙個類,為什麼又把它稱為元件呢?先不用管,我們只需知道,要為元件指定類即可,如果沒有指定會報錯,除非該元件有預設類,哪些元件有預設類呢?就是核心元件,裝個b看下原始碼,以yii高階模板為例。
pis:如無特別說明,下面的路徑指的是檔案具體路徑,不是命名空間開啟
/frontend/web/index.php
,看到
首先,用陣列助手類
跳轉到preinit
方法,在這個預初始化方法裡,接受的引數是引用,即這個方法要對$config
陣列改造,重點看
大概意思是,如果配置檔案沒有配置某元件或沒有為某元件指定類,這個元件就用corecomponents
指定的類。將$config
變數構造好後,傳到component::__construct($config)
,開始元件的具體內容,就不往下走了。
下面看元件屬性的配置,跳到/專案目錄/frontend/config/main.php
,我們看到urlmanager元件配置被注釋掉了,即意味著其使用了urlmanager
元件指定類的屬性的預設值,具體在\vendor\yiisoft\yii2\wbe\urlmanager.php
。
小結一下:元件配置,一指定類(無缺省就要在配置檔案寫明),二配置屬性,屬性就是類的成員變數為了方便,先給前台專案新增虛擬主機,具體看鏈結
documentroot
"$/www/advanced/frontend/web/"
servername
frontend.advanced.com
這步不是必須的~以請求
site
控制器的about
動作為例子
enableprettyurl
:
pis:這個設為false,下面的設定都不起作用
showscriptname
:
完成後,才能通過訪問
enablestrictparsing
:
suffix
: 字尾名,如設定為suffix => '.html
,需通過.html
才能訪問到
rules
: 規則的配置就很複雜了,下面詳講。
想訪問site
的about
動作,要在rules裡加
'site/about' => 'site/about'
其中,左邊稱為pattern
,對應輸入的url,右邊為route
,對應[模型/]控制器/動作。
如果不想為每個動作都加乙個規則,可以這樣
'/' => '/',
可以這樣理解,左邊,接收請求url的對應值,對它們作\w
驗證,即必須是字母或數字或下劃線,以/site/about
為例,驗證通過,賦值給臨時變數controller
,action
,右邊使用,從而找到site
控制器的about
動作。
同理,模組下的控制器動作也可以這樣實現
'//' => '//',
restful的路由規則,在研究,日後再補~ Yii框架擴充套件JDataItem 資料項元件
yii框架擴充套件jdataitem 資料項元件 配置詳細說明 繼承自cwidget類庫 屬性名 labelname 說明 標籤名稱 屬性名 htmloptions 說明 輸入控制項html選項值 屬性名 erroroptions 說明 錯誤提示html選項 屬性名 labelhtmloptions...
yii2 0 Html助手和Request元件
引入命名空間 useyii helpers html 一 表單 html beginform 提交位址,提交方法,屬性陣列 html beginform post id form class form data myself 二 輸入框 html input 型別,name值,預設值,屬性陣列 ht...
php擴充套件SeasLog應用於 yii2 元件
一.seaslog 簡單介紹及使用原因 它是c 寫的php擴充套件,效能很高,使用簡單,能滿足大部分簡單的日誌需求。個人感覺 其他優勢請看 缺點 使用時碰到的坑 1.如果配置有差錯會直接報錯,程式不健壯會導致頁面直接掛掉,而且由於c寫的這種意外報錯你很難處理。建議基本路徑和模組路徑一定要寫對 環境變...