從零開始學YII2架構(六)進階應用程式程式模板,yii2架構_PHP教程

來源:互聯網
上載者:User

從零開始學YII2架構(六)進階應用程式程式模板,yii2架構


進階應用程式程式模板
這個模板用在大型的團隊開發項目中,而且後台從前台獨立分離出來以便於部署在多個伺服器中。由於YIi2.0的一些新的特性,這個程式模板的功能要更深一點。提供了基本的資料庫的支援,註冊、密碼找回等功能。

安裝

可以通過Composer來安裝
如果沒有安裝Composer,先安裝

curl -s http://getcomposer.org/installer | php

然後用如下命令來擷取

php composer.phar create-project --prefer-dist --stability=dev yiisoft/yii2-app-advanced /path/to/yii-application

也可以直接下載壓縮檔:Yii 2 with advanced application template(beta)
https://github.com/yiisoft/yii2/ ... -app-2.0.0-beta.tgz

開始

安裝完成後,需要對其進行初始化操作。

執行init,選擇開發環境(dev)php /path/to/yii-application/init建立新的資料庫,設定common/config/main-local.php裡的components.db資料庫資訊使用控制台命令遷移資料庫yii migrate設定web伺服器的根目錄前台/path/to/yii-application/frontend/web/對應的url為http://frontend/後台/path/to/yii-application/backend/web/對應的url為http://backend/

目錄結構

在根目錄下面有這幾個子目錄

backend——後台web程式
common——公用的檔案
console——控制台程式
environments——環境配置
frontend——前台web程式
根目錄下面還有包含一些檔案

.gitignore ——git版本控制中忽略的檔案和目錄,如果你有一些你不想要的檔案到你的原始碼裡面就把它添加到這個檔案中。
composer.json——這個下面會描述
init——在Composer裡面所描述初始化指令碼
init.bat——和上面一樣,不過是Windows下面的
LIENSE.md——這個就不說了
README.md——同上
requirements.php——Yii運行環境要求檢測檔案
yii——控制台程式引導檔案
yii.bat——Windows下面的東東

系統定義的路徑別名

@yii ——架構的目錄。
@app——當前正在啟動並執行應用程式的基本路徑。
@common -公用檔案目錄。
@frontend——前端web應用程式目錄。
@backend ——後端web應用程式目錄。
@console -控制台目錄。
@runtime——當前正在啟動並執行web應用程式的運行時目錄
@vendor ——基礎架構目錄。
@web ——當前正在啟動並執行web應用程式的url
@webroot——當前正在啟動並執行web應用程式的web根目錄。

應用程式

這個模板包含三個應用程式,前台、後台和控制台。前台通常來說就是展現給終端使用者的,也就是項目本身。後台就是管理員控制台,包含有分析以及類似的功能等。控制台主要用來做一些定時任務和一些簡單的伺服器的管理,另外也可以用來部署應用程式、資料庫的遷移、資源的管理等。

common 目錄提供一些公用的檔案,可用於多個應用程式,例如User模型。

前台和後台都是web應用程式,他們都包含一個web目錄,也就是web的根目錄,在部署伺服器的時候就得要指向這個目錄。
每個應用程式都有他們自己的命名空間以及對應的別名。同理,common也有自己的命名空間和對應的別名。

配置和開發環境

在平常的開發中,直接設定設定檔會有多個問題

每個團隊成員都有自己的配置選項。如果提交這樣的配置將影響其他團隊成員。
產品資料庫密碼和API密鑰不應該在代碼倉庫中。
在有多個伺服器的情況下:開發、測試、生產,每一個伺服器都應該有自己的配置。
每種情況下都定義所有配置選項很重複,並且還要花太多的時間去維持它。

為瞭解決這些問題,Yii引入了一個非常簡單的環境的概念。每個環境由環境目錄下的一組檔案的集合來表示。init命令用於不同環境之間切換。它只是複製從環境目錄中所有應用程式的根目錄。

通常環境包含應用程式引導檔案如index.php和以-local.php尾碼的設定檔。這些已經添加到.gitignore中,所以不會再添加到源碼倉庫中。
為了避免重複的設定檔相互覆蓋。例如,前台應用程式按照以下順序來讀取配置:

common/config/main.phpcommon/config/main-local.phpfrontend/config/main.phpfrontend/config/main-local.php

參數檔案按以下順序讀取

common/config/params.phpcommon/config/params-local.phpfrontend/config/params.phpfrontend/config/params-local.php

後面讀取的檔案配置會覆蓋前面的配置

整個的流程圖形如下

配置 Composer

應用程式安裝完成後就可以設定要目錄下面的composer.json

{  "name": "yiisoft/yii2-app-advanced",  "description": "Yii 2 Advanced Application Template",  "keywords": ["yii", "framework", "advanced", "application template"],  "homepage": "http://www.yiiframework.com/",  "type": "project",  "license": "BSD-3-Clause",  "support": {    "issues": "https://github.com/yiisoft/yii2/issues?state=open",    "forum": "http://www.yiiframework.com/forum/",    "wiki": "http://www.yiiframework.com/wiki/",    "irc": "irc://irc.freenode.net/yii",    "source": "https://github.com/yiisoft/yii2"  },  "minimum-stability": "dev",  "require": {    "php": ">=5.4.0",    "yiisoft/yii2": "*",    "yiisoft/yii2-swiftmailer": "*",    "yiisoft/yii2-bootstrap": "*",    "yiisoft/yii2-debug": "*",    "yiisoft/yii2-gii": "*"  },  "scripts": {    "post-create-project-cmd": [      "yii\\composer\\Installer::setPermission"    ]  },  "extra": {    "writable": [      "backend/runtime",      "backend/web/assets",      "console/runtime",      "console/migrations",      "frontend/runtime",      "frontend/web/assets"    ]  }}

首先,修改一些基本資料。例如名稱,描述,關鍵詞,首頁等等。
你還可以根據你的需要添加更多的應用程式。這些包都是來自packagist.org,可免費的瀏覽所有的代碼。
修改完composer.json之後 就可以運行

php composer.phar update --prefer-dist

,等下載並安裝完成後就可以開始使用了。自動載入的類將會自動處理。

建立從後端到前端的連結

  通常情況下需要從後端應用程式串連到前端應用程式。因為前端應用程式可能包含自己的URL管理規則,所以需要再添加一個不同名字的背景URL管理規則。

return [  'components' => [    'urlManager' => [      // here is your normal backend url manager config    ],    'urlManagerFrontend' => [      // here is your frontend URL manager config    ],  ],];

之後,就可以像這樣來使用前台的url

echo Yii::$app->urlManagerFrontend->createUrl(...);

翻譯來源:http://www.yiiframework.com/doc-2.0/guide-apps-advanced.html
(Yii Framework 2.0 API Decumentation)


《從零開始學英語》不可以建立應用程式組

在C:\windows\檔案夾裡找到human.ini檔案。

編輯檔案內容:

[ZERO]
CDPATH=L:\ 這裡是你虛擬光碟機盤符,你自己看下是哪盤就改哪盤
HDPATH=d:\Program Files\HumanSoft\ZERO\ 這裡改你的安裝路徑。
[HumanASR Parameter]
BnfMode=2
MarkMode=2
GradeMark=10
FactorMark=10

然後在安裝目錄裡開啟程式就行了。
 

app store裡的“從零開始學英語”應用程式收費的,好用

對於你說的那個不是很瞭解,相關學習網站很多,但學習方法因人而異,可詳細瞭解後,再確定一個適合自己的學習平台
你可以百度搜尋“英語教練”詳細瞭解
1、不用擔心沒有時間,我們的學習時間是靈活的,完全由你自己來定;
2、不用擔心上當受騙,可試學滿意後再付款,不滿意不用花一分錢(當然,目前還沒有通過試學,不滿意我們教程的學員);
3、不用擔心沒基礎,我們教程,從零開始,逐步加強,並有專人指導;
4、不用擔心自己跟不上教學進度,我們的學習計劃是根據個人差異來制定的;
5、不用擔心學習過程中遇到問題,不能得到及時解決,我們會為每位學員指定專人,跟蹤輔導
 

http://www.bkjia.com/PHPjc/866653.htmlwww.bkjia.comtruehttp://www.bkjia.com/PHPjc/866653.htmlTechArticle從零開始學YII2架構(六)進階應用程式程式模板,yii2架構 進階應用程式程式模板 這個模板用在大型的團隊開發項目中,而且後台從前台獨立分離出...

  • 相關文章

    聯繫我們

    該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

    如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

    A Free Trial That Lets You Build Big!

    Start building with 50+ products and up to 12 months usage for Elastic Compute Service

    • Sales Support

      1 on 1 presale consultation

    • After-Sales Support

      24/7 Technical Support 6 Free Tickets per Quarter Faster Response

    • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.