這段時間新上了一個項目,使用的是Yii2框架。這裏記錄一下Yii2框架、Yii2-Mongo拓展、Yii2-Redis拓展等的安裝流程。由於使用的系統是Windows,這裏只說Windows下的安裝方法,不過Linux下大同小異,甚至能夠說比Windows更加簡單。php
Composer是一個用於PHP包管理的工具。有了Composer,PHP開發的包管理就變得異常簡單。對於PHP「悠久」的歷史來講,包管理工具顯得姍姍來遲。12年3月推出alpha版本,直到今年(2016年)3月才推出第一個beta版本,不過無論怎麼說,PHP終於仍是有包管理了,這是好事。可是可能由於某些緣由,Composer在國內的使用並非很是方便。這裏說一下Composer在Windows的安裝方式,以及所須要的配置。html
你要保證你的系統已經安裝了PHP,且cmd中已經有了php命令。具體的配置方式能夠看我以前的博文《我的PHP開發環境的選擇與搭建》。git
你可能須要安裝git以及配置,安裝包的時候部分代碼可能須要從git倉庫中拉取。具體看這篇(百度經驗)[http://jingyan.baidu.com/article/9f7e7ec0b17cac6f2815548d.html]吧,其實過程和PHP的環境配置一毛同樣。github
官方有一個用命令安裝Composer的方式,具體文檔在這裏:Composer-Download。可是我一直卡在簽名驗證這一步,一怒之下使用「傻瓜安裝」,即直接下載Composer-Setup.exe,安裝完事。打開cmd,輸入composer
,若是出現Composer的幫助頁面,即表示Composer安裝成功。web
爲了規避上述的「某些緣由」,咱們須要對Composer作一些配置,以達到在國內流暢使用Composer的目的。Composer的境外鏡像在https://packagist.org/,可是經常訪問不了,爲了解決這個問題,能夠訪問國內的全量鏡像。
具體的配置方法其實網站上也有,其實很簡單,直接打開cmd,輸入如下命令便可。redis
composer config -g repo.packagist composer https://packagist.phpcomposer.com
須要注意的是,這種配置方式是全局式的,一勞永逸。若是須要具體的項目配置不一樣的鏡像,能夠到項目根目錄(就是有composer.json文件的那個文件夾),右鍵->use composer here,而後輸入如下命令便可。固然瞭如今你尚未使用Composer下載任何項目到你的電腦,這種方法暫時能夠忽略。mongodb
composer config repo.packagist composer https://packagist.phpcomposer.com
安裝Yii2框架的方法在Yii官網及Yii中文網上都有說明,由於有了Composer,也就是一行命令的事。這裏推薦看官方的英文文檔,由於英文的文檔一直有在更新,中文文檔不只翻譯進度堪憂,並且相比於官方文檔已經落後不少。數據庫
建議在安裝Yii2以前先運行composer self-update
命令,使Composer版本保持最新。以前安裝Yii2的時候遇到過由於Composer版本太低而致使自動載入函數出現錯誤的問題,如今大概已經解決了。apache
而後運行以下兩個命令npm
composer global require "fxp/composer-asset-plugin:~1.1.1" composer create-project --prefer-dist yiisoft/yii2-app-basic basic
說明一下,第一個命令是安裝Composer asset plugin,用於管理bower和npm包,反正你早晚要用的,全局安裝就是。
第二個命令是在當前目錄安裝Yii2框架basic版本,相應的Yii2框架也存在Advanced版本,你能夠根據你項目的大小選擇框架的版本,不過對於初學Yii框架的人來講Basic版本足矣。命令最後一個參數basic只是表示放置框架文件的文件夾名稱,你能夠隨便設置。
安裝Yii2的過程當中,可能會向你索取一個github的Personal access tokens,到你的github主頁(什麼你沒有github帳號? 怎麼能夠沒有,趕忙註冊一個)Personal settings裏設置一個就是了,記得保存,一旦你把頁面關閉,你就再也看不到它了。
安裝結束以後你須要在/basic/config/web.php
的cookieValidationKey
配置項下填入一個key,不然運行框架會報錯。
使用瀏覽器(我已經默認你已安裝了服務器軟件(例如apache)以及php,且已經開啓)訪問到localhost/basic/web
(默認你將框架文件放在服務器根目錄)便可看到框架的Demo頁面。
至此Yii2框架已經安裝完畢,若是你的項目數據庫採用的是MySQL,那麼恭喜你,Yii2對於MySQL的支持很是完善,尤爲是ActiveRecord的使用更是方便了開發人員進行數據庫操做。可是若是你想要使用NoSQL類型的數據庫(例如MongoDB)且也想使用Yii2的ActiveRecord怎麼辦?Yii官方提供了MongoDB拓展,安裝便可。
Yii2是自然支持MySQL以及一些主流的數據庫的,具體的支持列表能夠看一下官方文檔。能夠注意到官方提供的驅動裏並無MongoDB,那麼若是想要使用諸如MongoDB這樣的非關係型數據庫怎麼辦?可喜的是,官方實際上是提供了MongoDB的拓展的,可是須要自行下載安裝。具體的文檔在Yii2的官方網站上有提供,能夠點擊查看。
安裝composer的拓展有兩種方法,一種是在命令行下使用命令直接安裝,一種是經過修改項目下的composer配置文件,而後經過composer update
進行安裝。
第一種方法:
在項目的目錄下(即有一個composer.json文件的目錄)打開命令行,輸入以下命令
composer require --prefer-dist yiisoft/yii2-mongodb
第二種方法:
在composer.json的require字段下加入以下配置,注意寫入配置的時候要嚴格按照JSON格式書寫,不然會致使composer錯誤。
"yiisoft/yii2-mongodb": "~2.0.0"
而後在當前目錄下打開命令行,運行以下命令
composer update
composer的安裝進度完成後,須要在Yii2框架的config.php文件中進行以下的修改,即將拓展的入口類及數據庫鏈接方式寫入配置中。
return [ //.... 'components' => [ 'mongodb' => [ 'class' => '\yii\mongodb\Connection', 'dsn' => 'mongodb://developer:password@localhost:27017/mydatabase', ], ], ];
具體的使用指導能夠查看官方的文檔。推薦使用ActiveRecord的方式使用拓展。
其實安裝MongoDB拓展成功後,Redis拓展的安裝就輕車熟路了,無非也就是上述兩種方式:直接輸入命令安裝或者修改配置文件後update。官方文檔在這裏,具體的安裝方法就很少贅述了。