通過(guò)Composer安裝?
可以通過(guò)多種方式在你的系統(tǒng)中來(lái)使用Composer安裝CodeIgniter。
前兩種方法描述了使用CodeIgniter4來(lái)創(chuàng)建一個(gè)項(xiàng)目的骨架結(jié)構(gòu),從而讓你可以在一個(gè)新的webapp中作為基礎(chǔ)來(lái)使用。 而第三種技術(shù),如下所述,使得你可以將CodeIgniter4加入進(jìn)一個(gè)現(xiàn)存的webapp中。
注意: 如果你正使用一個(gè)Git倉(cāng)庫(kù)來(lái)存儲(chǔ)代碼或與他人寫(xiě)作,那么 vendor
目錄就需要添加到gitignore文件中。在這種情況下,當(dāng)你克隆倉(cāng)庫(kù)到新系統(tǒng)中,就需要執(zhí)行 composer update
指令
啟動(dòng)應(yīng)用?
CodeIgniter 4 應(yīng)用啟動(dòng) 倉(cāng)庫(kù)里通過(guò)composer依賴(lài)最新版本的框架來(lái)維護(hù)了一個(gè)基礎(chǔ)骨架的應(yīng)用。
以下安裝教程適用于每一位希望啟動(dòng)一個(gè)新的基于CodeIgniter4的項(xiàng)目的開(kāi)發(fā)者。
安裝和設(shè)置?
在你的項(xiàng)目根目錄執(zhí)行以下命令:
composer create-project codeigniter4/appstarter project-root
該指令將會(huì)創(chuàng)建一個(gè) “project-root” 目錄。
如果你忽略了”project-root”參數(shù),該命令就會(huì)創(chuàng)建一個(gè)”appstarter”目錄,該目錄當(dāng)需要時(shí)可以被重命名。
如果你不需要或不想安裝PHPUnit以及跟它相關(guān)的任何Composer依賴(lài),請(qǐng)?jiān)谠撁畹奈膊吭黾印报Cno-dev”選項(xiàng)。 這一操作將只會(huì)使用Composer安裝框架本體以及三個(gè)我們打包過(guò)的可信賴(lài)的外部依賴(lài)包。
下面是一個(gè)這樣的安裝指令的示例,使用默認(rèn)的項(xiàng)目根目錄”APPstarter”:
composer create-project codeigniter4/appstarter --no-dev
安裝完成后你應(yīng)該根據(jù) “升級(jí)” 這節(jié)里的步驟繼續(xù)進(jìn)行。
升級(jí)?
每當(dāng)有新的發(fā)布時(shí),在你項(xiàng)目的根目錄運(yùn)行以下指令:
composer update
如果在你創(chuàng)建項(xiàng)目時(shí)使用了”–no-dev”選項(xiàng),那么在這里也一樣適合這樣做。composer update --no-dev
閱讀升級(jí)指南,并檢查指定的 app/Config
目錄是否有內(nèi)容變更。
優(yōu)點(diǎn)?
便于安裝,便于升級(jí)。
缺點(diǎn)?
你仍需要在更新后檢查 app/Config
的變更。
結(jié)構(gòu)?
設(shè)置完成后你的項(xiàng)目中會(huì)有以下目錄:
- app, public, tests, writable
- vendor/codeigniter4/framework/system
- vendor/codeigniter4/framework/app & public (compare with yours after updating)
最新的開(kāi)發(fā)版本?
App Start倉(cāng)庫(kù)里有著 builds
腳本,在框架當(dāng)前穩(wěn)定發(fā)布版本和最新的開(kāi)發(fā)版本間進(jìn)行選擇。
對(duì)于開(kāi)發(fā)者而言,可以選擇使用該腳本來(lái)獲取最新的變更,不過(guò)這些變更可能是不穩(wěn)定的。
開(kāi)發(fā)者用戶(hù)手冊(cè) 可以在線訪問(wèn)。請(qǐng)注意與當(dāng)前發(fā)布版本的用戶(hù)手冊(cè) 有所不同,并獨(dú)立維護(hù)一個(gè)開(kāi)發(fā)的分支。
在你的項(xiàng)目根目錄執(zhí)行以下指令:
php builds development
以上的指令將會(huì)更新 composer.json 文件并將當(dāng)前的工作倉(cāng)庫(kù)指向 develop
分支,并在配置和XML文件中更新對(duì)應(yīng)的路徑。
如果要回退以上變更,請(qǐng)執(zhí)行:
php builds release
在使用完 builds
命令后,請(qǐng)確保運(yùn)行 composer update
來(lái)將你的vendor目錄與最新版本的同步。
將CodeIgniter4添加到現(xiàn)存項(xiàng)目中?
在”手動(dòng)安裝”這章中描述過(guò)的 CodeIgniter 4 framework 倉(cāng)庫(kù)同樣也可使用Composer來(lái)被添加到現(xiàn)存的項(xiàng)目中。
在 app
目錄下開(kāi)發(fā)你的應(yīng)用,public
目錄作為文檔的根目錄。
在你的項(xiàng)目根目錄下:
composer require codeigniter4/framework
與前面兩個(gè)composer安裝方式類(lèi)似,你也可以在”composer require”命令中使用”–no-dev”參數(shù)來(lái)忽略安裝PHPunit。
設(shè)置?
從 vendor/codeigniter4/framework
中復(fù)制app, public, tests 和 writable目錄到你的項(xiàng)目根目錄下。
從 vendor/codeigniter4/framework
中復(fù)制 env
, phpunit.xml.dist
and spark
文件到你的項(xiàng)目根目錄下。
你需要設(shè)置指向 vendor/codeigniter/framework
的目錄 —— 通過(guò)修改 app/Config/Paths.php
中的 $systemDirectory
變量
升級(jí)?
每當(dāng)有新的發(fā)布時(shí),在你項(xiàng)目的根目錄運(yùn)行以下指令:
composer update
如果在你創(chuàng)建項(xiàng)目時(shí)使用了”–no-dev”選項(xiàng),那么在這里也一樣適合這樣做。composer update --no-dev
閱讀升級(jí)指南,并檢查指定的 app/Config
目錄是否有內(nèi)容變更。
專(zhuān)業(yè)人士?
相當(dāng)簡(jiǎn)單的安裝方式;便于升級(jí)
貢獻(xiàn)者?
你仍需要在更新后檢查 app/Config
的變更。
結(jié)構(gòu)?
設(shè)置完成后你的項(xiàng)目結(jié)構(gòu)如下:
- app, public, tests, writable
- vendor/codeigniter4/framework/system