在 PHP 開發(fā)中,我們常常使用 Composer 工具來管理依賴包。而依賴包的安裝、升級(jí)和刪除等行為則是由 composer.json 文件指導(dǎo)的。那么,在使用 Composer 前,我們需要對(duì) composer.json 對(duì)象有一定的了解。
{ "name": "myproject", "description": "A project skeleton built with Slim", "require": { "slim/slim": "^3.0", "monolog/monolog": "^1.0" } }
在上面的例子中,我們列舉了 composer.json 的三個(gè)主要屬性:
- name屬性:表示項(xiàng)目的名稱,但是這并沒有什么實(shí)際用途,因?yàn)檫@個(gè)屬性主要用于區(qū)分不同的包而不是項(xiàng)目。
- description屬性:表示項(xiàng)目的介紹,它通常會(huì)與你的項(xiàng)目倉庫 README 文件一致,以便其他使用者看到。
- require屬性:表示依賴包列表,它指定了你的項(xiàng)目所需要的依賴包及其版本信息。
下面是一個(gè)更復(fù)雜的例子:
{ "name": "myproject", "description": "A project skeleton built with Slim", "require": { "slim/slim": "^3.0", "monolog/monolog": "^1.0" }, "autoload": { "psr-4": { "MyProject\\": "src/" } } }
在上面的例子中,我們額外添加了一個(gè)autoload屬性,它指定了我們所使用的自動(dòng)加載方式。其中,我們使用 PSR-4 規(guī)范將 MyProject 命名空間綁定到 src/ 目錄。這樣我們的項(xiàng)目就可以自動(dòng)加載 src/ 目錄下的類文件了。