鏡像下載、域名解析、時間同步請點擊 阿里巴巴開源鏡像站
一、前提條件
確保在繼續下面的步驟之前,你滿足了下面的前提條件:
- 以擁有 sudo 權限的用戶身份登錄
- 已經在 你的 CentOS 8 系統上安裝了 PHP
二、在 CentOS 上安裝 Composer
在 CentOS 8 上執行下面的步驟,安裝 Composer。
- 方法一(普通安裝)
1、安裝 PHP CLI(命令行界面)軟件包和其他所有的依賴軟件包:
sudo dnf install php-cli php-json php-zip wget unzip
2、安裝完之後,下載 Composer 安裝腳本:
php -r "copy('https://getcomposer.org/installer', 'composer-setup.php');"
上面的這個命令將會在當前工作目錄下載一個名為 composer-setup.php
的文件。
3、驗證文件的完整性,將文件的SHA-384
哈希值和omposer Public Keys / Signatures頁面的哈希值進行比對。
下面的 wget 命令將會從 Composer 的 Github 頁面下載最新的 Composer簽名,然後存儲為一個變量,名字為HASH
。
HASH="$(wget -q -O - https://composer.github.io/installer.sig)"
運行下面的命令,驗證安裝腳本是否損壞:
php -r "if (hash_file('SHA384', 'composer-setup.php') === '$HASH') { echo 'Installer verified'; } else { echo 'Installer corrupt'; unlink('composer-setup.php'); } echo PHP_EOL;"
如果 哈希值匹配,會出現以下信息:
Installer verified
否則,說明哈希值不匹配,你將會看到Installer corrupt
。
4、驗證通過後,運行下面的命令,將 Composer 安裝到/usr/local/bin
目錄:
sudo php composer-setup.php --install-dir=/usr/local/bin --filename=composer
上面的命令將composer
安裝成一個系統範圍的命令,所有用戶都可以使用,輸出內容如下:
All settings correct for using Composer
Downloading...
Composer (version 1.10.1) successfully installed to: /usr/local/bin/composer
Use it: php /usr/local/bin/composer
5、通過打印 Composer 的版本,驗證安裝是否成功:
composer -V
Composer version 1.10.1 2020-03-13 20:34:27
此時,你已經在你的 CentOS 系統上成功安裝了 Composer,你可以開始使用它了。
- 方法二(快速安裝)
1、安裝 PHP CLI 和 ZIP:
sudo dnf install php-cli php-json php-zip curl unzip
2、使用 curl 安裝 Composer:
curl -sS https://getcomposer.org/installer |php
3、移動 Composer 文件 到 /usr/local/bin
目錄:
sudo mv composer.phar /usr/local/bin/composer
三、使用 Composer
Composer 在 CentOS 系統上安裝好之後,接下來會向你展示如何在一個 PHP 項目中使用 Composer。
1、開始創建項目,並且切換到項目根目錄:
mkdir ~/my-first-composer-project
cd ~/my-first-composer-project
在這個例子中,我們將會使用一個名為 carbon的 PHP 軟件包來創建一個簡單的應用。該應用主要用來打印當前時間。
2、運行下面的命令來初始化一個新的 Composer 項目,並且安裝 carbon 軟件包:
composer require nesbot/carbon
sing version ^2.32 for nesbot/carbon
./composer.json has been created
Loading composer repositories with package information
Updating dependencies (including require-dev)
Package operations: 4 installs, 0 updates, 0 removals
- Installing symfony/translation-contracts (v2.0.1): Downloading (connecting..Downloading (100%)
- Installing symfony/polyfill-mbstring (v1.15.0): Downloading (100%)
- Installing symfony/translation (v5.0.6): Downloading (100%)
- Installing nesbot/carbon (2.32.1): Downloading (100%)
symfony/polyfill-mbstring suggests installing ext-mbstring (For best performance)
symfony/translation suggests installing symfony/config
symfony/translation suggests installing symfony/yaml
symfony/translation suggests installing psr/log-implementation (To use logging capability in translator)
Writing lock file
Generating autoload files
3 packages you are using are looking for funding.
Use the `composer fund` command to find out more!
就像你從上面的輸出所看到的,Composer 創建了一個名為composer.json
的文件,並且下載了 carbon 和它的所有依賴軟件包。
3、查看composer項目目錄,你將看到它包含了composer.json
和 composer.lock
,還有一個 vendor
目錄。
ls -l
-rw-rw-r--. 1 vagrant vagrant 60 Mar 27 18:05 composer.json
-rw-rw-r--. 1 vagrant vagrant 11135 Mar 27 18:06 composer.lock
drwxrwxr-x. 6 vagrant vagrant 82 Mar 27 18:06 vendor
-
vendor
是項目依賴軟件包儲存的目錄。 -
composer.lock
文件包含了一個所有已經安裝依賴軟件包的清單,以及它們的版本號。 -
composer.json
是一個用來描述你的 PHP 項目的文件,它包含了 PHP 依賴軟件包以及其他元信息。
說明:你可以搜索 Composer 源倉庫,獲取更多 PHP 軟件包。
Composer 擁有自動加載的能力,它允許你使用 PHP 類,而不用使用require
和include
聲明。
4、創建一個名為testing.php
的測試文件,並且添加下面的代碼:
<?php
require __DIR__ . '/vendor/autoload.php';
use Carbon\Carbon;
printf("Now: %s", Carbon::now());
5、代碼分析。
第一行在一個開放的 PHP 標籤後,包含了/vendor/autoload.php
文件,它允許自動加載所有的類庫。
下一步,將Carbon\Carbon
關聯為Carbon
. 最後一行使用了Carbon
打印現在的時間。
輸入下面的命令,運行腳本:
php testing.php
輸出界面如下:
Now: 2020-03-27 22:12:26
如果你想升級你的 PHP 軟件包,你只需運行以下命令:
composer update
說明:上面的這個命令,會檢查所有已經安裝的軟件包是否有更新的版本,如果有更新的版本,Composer 將會自動升級軟件包。
“ 阿里巴巴開源鏡像站 提供全面,高效和穩定的系統鏡像、應用軟件下載、域名解析和時間同步服務。”