2021-01-19 Composer

一、安裝
下載并安裝composer

curl -sS https://getcomposer.org/installer | php

將composer放入系統(tǒng)目錄,方便直接調(diào)用

mv composer.phar /usr/local/bin/composer

查看是否安裝成功

composer --version

二、Composer安裝ThinkPHP5.1
使用composer在網(wǎng)站根目錄中安裝ThinkPHP5.1:

cd /usr/share/nginx
composer create-project topthink/think=5.1.* tp5

之后composer會提示你不要使用root權限安裝代碼:

Do not run Composer as root/super user! See https://getcomposer.org/root for details

故切換為其他用戶,添加文件權限:

useradd loveuzi
passwd loveuzi
chown -R root:loveuzi /usr/share/nginx
su loveuzi

由于外網(wǎng)速度坑爹,需要更換國內(nèi)鏡像源:

composer config -g repo.packagist composer https://mirrors.aliyun.com/composer/

安裝效果如圖:


image.png

Ctrl+D切換回root用戶,再把文件權限改回來:

chown -R root:nginx /usr/share/nginx

把網(wǎng)站文件移入html:

mv tp5/* html

配置config/database.php中的數(shù)據(jù)庫信息,在application/index/controller/Index.php中加入public function test() {print_r(('user')->where('id',1)->find());},然后訪問你的網(wǎng)址(由于沒有配置PATHINFO,只能用s來傳參):
http://yourwebsite.com/public/index.php
http://yourwebsite.com/public/index.php?s=/index/index/test

頁面出現(xiàn)即網(wǎng)站安裝成功,數(shù)據(jù)庫成功訪問。

三、指令
基礎配置文件composer.json

{
    "require": {
        "monolog/monolog": "1.2.*"
    }
}
# 按照composer.json安裝依賴包
composer install
# 單獨引入依賴包
composer require monolog/monolog
# 更新所有依賴
composer update
# 更新指定的包
composer update monolog/monolog
# 移除制定的包
composer remove monolog/monolog
# 搜索依賴包
composer search monolog
# 列出所有已經(jīng)安裝的包
composer show
# 可以通過通配符進行篩選
composer show monolog/*
# 顯示具體某個包的信息
composer show monolog/monolog

四、基本約束

精確版本

我們可以告訴 Composer 安裝的具體版本,例如:1.0.2,指定 1.0.2 版本。

范圍

通過使用比較操作符來指定包的范圍。這些操作符包括:>,>=,<,<=,!=。

你可以定義多個范圍,使用空格或者逗號 , 表示邏輯上的與,使用雙豎線 || 表示邏輯上的或。其中與的優(yōu)先級會大于或。 實例:

=1.0
=1.0 <2.0
=1.0 <1.1 || >=1.2
我們也可以通過使用連字符 - 來指定版本范圍。

連字符的左邊表明了 >= 的版本,如果右邊的版本不是完整的版本號,則會被使用通配符進行補全。例如1.0 - 2.0等同于>=1.0.0 <2.1(2.0相當于2.0.*),而1.0.0 - 2.1.0則等同于>=1.0.0 <=2.1.0。

通配符

可以使用通配符來設置版本。1.0.相當于>=1.0 <1.1。
例子:1.0.

波浪號 ~

我們先通過后面這個例子去解釋~操作符的用法:~1.2相當于>=1.2 <2.0.0,而~1.2.3相當于>=1.2.3 <1.3.0。對于使用Semantic Versioning作為版本號標準的項目來說,這種版本約束方式很實用。例如~1.2定義了最小的小版本號,然后你可以升級2.0以下的任何版本而不會出問題,因為按照Semantic Versioning的版本定義,小版本的升級不應該有兼容性的問題。簡單來說,~定義了最小的版本,并且允許版本的最后一位版本號進行升級(沒懂得話,請再看一邊前面的例子)。
例子:~1.2

需要注意的是,如果~作用在主版本號上,例如~1,按照上面的說法,Composer可以安裝版本1以后的主版本,但是事實上是~1會被當作~1.0對待,只能增加小版本,不能增加主版本。

折音號 ^

^操作符的行為跟Semantic Versioning有比較大的關聯(lián),它允許升級版本到安全的版本。例如,^1.2.3相當于>=1.2.3 <2.0.0,因為在2.0版本前的版本應該都沒有兼容性的問題。而對于1.0之前的版本,這種約束方式也考慮到了安全問題,例如^0.3會被當作>=0.3.0 <0.4.0對待。
例子:^1.2.3

?著作權歸作者所有,轉載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

相關閱讀更多精彩內(nèi)容

  • 聲明:本文轉自菜鳥學堂,本人最喜歡對技術站點之一 Composer 是 PHP 的一個依賴管理工具。我們可以在項目...
    麥子時光_新浪閱讀 806評論 0 0
  • 本文檔根據(jù)Composer中國官方文檔經(jīng)過整理編排而成,相對官方文檔更符合常規(guī)的思維和操作習慣,方便上手,內(nèi)容比較...
    賈善德閱讀 5,029評論 0 3
  • 簡介 Composer 是 PHP 的一個依賴管理工具。我們可以在項目中聲明所依賴的外部工具庫,Composer ...
    傾斜的陽光閱讀 336評論 0 1
  • composer是現(xiàn)代PHP的基石 現(xiàn)代高級編程語言,依賴管理工具是必不可少的。Java有Maven,Python...
    閑睡貓閱讀 19,959評論 0 27
  • 推薦指數(shù): 6.0 書籍主旨關鍵詞:特權、焦點、注意力、語言聯(lián)想、情景聯(lián)想 觀點: 1.統(tǒng)計學現(xiàn)在叫數(shù)據(jù)分析,社會...
    Jenaral閱讀 5,981評論 0 5

友情鏈接更多精彩內(nèi)容