日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

Composer快速入门

發布時間:2023/12/4 编程问答 26 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Composer快速入门 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

什么是Composer

Composer?是PHP的一個依賴管理工具。你可以在你的項目里聲明你依賴的庫,然后Composer會幫你解決以下問題:找到這些庫以及這些庫所依賴的庫可以安裝的版本,然后進行安裝。所以Composer是一個依賴管理工具,而不是一個包管理工具(類似Yum或者Apt),因為它是基于每個項目去管理這些包,把這些包安裝到項目里的某個目錄。

Composer的安裝

Composer要求?PHP 5.3.2+?版本以及一些PHP的配置,如果有不兼容的情況發生,在安裝過程中會有提示。有兩種方式安裝Composer,一是本地安裝,而是全局安裝。

本地安裝

本地安裝會把Composer安裝到當前的目錄下。運行以下命令進行安裝:

$ php -r "copy('https://getcomposer.org/installer', 'composer-setup.php');" $ php -r "if (hash_file('SHA384', 'composer-setup.php') === '070854512ef404f16bac87071a6db9fd9721da1684cd4589b1196c3faf71b9a2682e2311b36a5079825e155ac7ce150d') { echo 'Installer verified'; } else { echo 'Installer corrupt'; unlink('composer-setup.php'); } echo PHP_EOL;" $ php composer-setup.php $ php -r "unlink('composer-setup.php');"

?

一共4條命令,它們分別執行以下的操作:

  • 下載安裝文件到當前目錄。

  • 檢驗安裝文件的SHA-384散列。

  • 運行安裝文件。

  • 刪除安裝文件。

  • 然后我們就可以運行執行以下命令來運行Compoer了:

    $ php composer.phar

    ?

    需要注意的是,第二步檢查文件的散列,每一個版本安裝文件的散列值都會不同的,所以每次安裝最好都到?下載頁面?去獲取安裝代碼。或者如果你覺得沒有檢查安裝文件的必要的話,也可以跳過這條命令去執行下面的命令。當然從安全角度考慮,不建議這么做。

    全局安裝

    所謂全局安裝,其實就是把Composer安裝到?PATH?變量里的某個目錄中,這樣你就可以從任何地方去訪問Composer了。個人也建議這么做。我們只需要把本地安裝的composer執行文件移動到全局目錄下即可:

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

    ?

    這樣你就可以在任何地方直接運行?composer?命令了。后續如沒有特別說明,都是在全局安裝的情況下執行命令。

    安裝選項

    Composer安裝時支持3個選項。

    --install-dir

    通過?--install-dir?選項可以修改Composer的安裝路徑,例如如果我們想把Composer安裝在?bin?目錄下:

    $ php composer-setup.php --install-dir=bin

    ?

    --filename

    通過?--filename?選項,我們可以修改Composer執行文件的名稱(默認為composer.phar)。例如:

    $ php composer-setup.php --filename=composer

    ?

    --version

    如果想安裝指定版本的Composer,可以使用?--version?選項:

    $ php composer-setup.php --version=1.0.0-alpha8

    ?

    手動下載

    除了上面的安裝方式外,還可以直接下載執行文件,請到?下載頁面?進行下載。

    Composer的更新

    更新Composer很簡單,只需要執行以下命令:

    $ composer selfupdate Updating to version 1.1.2 (stable channel).Downloading: 100% Use composer self-update --rollback to return to version 06c45623d76457562cecbcf2245f904aa0f63a87# 或者(兩者是等效的) $ composer self-update

    ?

    如果想進行版本的回滾,可以使用以下命令:

    $ composer selfupdate --rollback Rolling back to version 2016-05-26_16-11-16-06c4562.

    ?

    Composer的基本使用

    composer.json文件

    安裝完Composer后,想要在項目里開始使用它,你唯一需要做的就是創建一個composer.json?文件。這個文件描述了你這個項目所依賴的包以及一些其他的元信息。

    require鍵

    通過require這個配置項,我們可以指定項目的依賴。假設我們項目需要用到monolog/monolog?這個日志庫,那么我們可以這樣配置?composer.json?文件:

    {"require": {"monolog/monolog": "1.0.*"} }

    ?

    require?的值是一個對象,對象里的每一個鍵對應一個依賴,通過鍵名為包的名稱,鍵值為包的版本。

    包的名稱

    包名由vendor名和項目名組成,這樣可以保證包名的唯一性。項目名可以重復,但是vendor名每個人都不一樣。以?monolog/monolog?為例,vendor名和項目名都是monolog?。

    包的版本

    在上面的例子中,我們要求?monolog/monolog?的版本為?1.0.*?,表示任何的1.0的開發分支版本都滿足要求。版本的指定方式有很多種,在后面的文章中會進行詳細的解說。

    安裝依賴

    創建完?composer.json?文件并配置好?require?后,我們就可以安裝依賴了,只需要運行以下的命令:

    $ composer install Loading composer repositories with package information Updating dependencies (including require-dev)- Installing monolog/monolog (1.0.2)Downloading: 100% Writing lock file Generating autoload files

    ?

    Composer會根據上面配置的版本約定下載最新版本的?monolog/monolog?到默認目錄?vendor?下。

    composer.lock文件

    運行完上面的?install?命令后,你會發現除了?vendor?目錄,還會多了一個composer.lock?文件。這個文件保存了項目已經安裝的每個包的具體版本。在運行install?命令的時候,如果存在這個文件,則Composer會根據這個文件下載對應版本的包。這樣的好處是可以保證各個環境的依賴的版本一致,否則如果沒有這個文件,每個環境在運行?install?時可能下載到的版本就不一致了。所以建議把composer.lock?文件也放到版本控制里。

    更新依賴

    要更新依賴,只需要運行?update?命令:

    # 更新所有的依賴 $ composer update# 更新某個依賴 $ composer update monolog/monolog

    ?

    自動加載

    下載完依賴后,我們可以開始使用依賴所提供的庫了。Composer會為下載的庫創建自動加載文件?vendor/autoload.php?,我們只需要包含這個文件就能輕松的調用各個庫的功能。以?monolog/monolog?為例:

    $log = new Monolog\Logger('name'); $log->pushHandler(new Monolog\Handler\StreamHandler('app.log', Monolog\Logger::WARNING)); $log->addWarning('Foo');

    ?

    我們不用關心庫文件的加載問題,Composer的?autoload.php?文件已經幫我們處理好了各個庫的自動加載。

    Packagist 鏡像

    至此,我們安裝好了Composer,也知道了它的基本用法,基本可以快樂的玩耍了。但是眾所周知,由于某些原因,github和packagist在國內有時會訪問不了,或者速度很慢,這就會導致使用Composer時的各種不爽。還好我們國內有個?鏡像?可以解決這個問題,只需要把倉庫的路徑修改為鏡像的路徑即可。

    有兩種方式,一是修改Composer的全局配置(推薦的方式):

    $ composer config -g repo.packagist composer https://packagist.phpcomposer.com

    ?

    這個命令會修改Composer的全局配置文件?config.json?。二是修改單個項目的配置:

    $ composer config repo.packagist composer https://packagist.phpcomposer.com

    ?

    這個命令會修改項目下的?composer.json?文件,添加如下的配置信息:

    "repositories": {"packagist": {"type": "composer","url": "https://packagist.phpcomposer.com"} }

    ?

    當然你也可以直接手動修改?composer.json?文件,添加上面那段配置信息。

    詳情請訪問:?http://pkg.phpcomposer.com/?。

    參考

    • https://getcomposer.org/

    • http://pkg.phpcomposer.com/

    總結

    以上是生活随笔為你收集整理的Composer快速入门的全部內容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。