#

Composer là gì? Hướng dẫn cài đặt Composer cực kì chi tiết

 20/05/2022 - 14:59 Trịnh Duy Thanh

Composer được ra mắt vào ngày 1/3/2012 và được sử dụng phổ biến giống như một công cụ thiết yếu cho quản trị viên lập trình PHP. Việc cài đặt các thư viện theo cách thủ công gây ra nhiều rắc rối như không hoàn thành update hay không đủ điều kiện tải xuống. Giờ đây, Composer đã làm thay đổi hoàn toàn mọi thứ. Trong bài viết dưới đây BKHOST sẽ cùng bạn đi tìm hiểu về Composer – một công cụ quản lý thư viện an toàn!

Composer là gì?

composer la gi

Composer là một trình quản lý phụ thuộc đa nền tảng của PHP cho phép người dùng có thể cài đặt và cập nhật các thư viện mà dự án đang sử dụng. Nhưng ưu điểm của Composer so với cách thủ công là gì? Hãy so sánh các đặc điểm dưới đây:

Dịch vụ Gmail theo tên miền riêng cho doanh nghiệp

Đặc biệt đang có chương trình khuyến mại cực tốt cho khách hàng đăng ký dịch vụ Gmail Tên Miền Riêng:

  • Giảm giá lên đến 20%.
  • Giá chỉ từ 495k/5mail.
  • Dung lượng lên đến 30GB/user.

Đăng ký ngay:

dịch vụ Gmail cho Doanh Nghiệp

Cách để cài đặt thư viện theo phương pháp thủ công:

  • Tải xuống và cài đặt thư viện vào máy.
  • Các thư viện bị phụ thuộc lẫn nhau.
  • Khó khăn trong việc cập nhật thư viện.

Quản lý cài đặt dễ dàng hơn với composer:

  • Tự động cài đặt các thư viện mà dự án sử dụng, quản lý tập trung các thư viện và phiên bản của chúng để tránh xảy ra lỗi.
  • Lên lịch cập nhật thư viện thường xuyên.
  • Tìm kiếm các phiên bản package cần thiết có thể cài đặt và tải chúng về dự án.

Cài đặt composer

cai dat composer

Composer có thể cài đặt và sử dụng hiệu quả trên nhiều hệ điều hành khác nhau như Mac, Linux, Windows.

Cài đặt composer trên Mac OS

Trên Mac OS, mở Terminal và thực hiện các bước chạy các dòng lệnh sau:

# get the composer phar file
curl -sS https://getcomposer.org/installer | php

# now we move composer.phar file to a executable directory
sudo mv composer.phar /usr/local/bin/

# we need to let our computer to run composer command globally
# in order to do that we need to add entry in our bash_profile file
# open bash_profile file using nano editor
nano ~/.bash_profile

# add this line below to bash_profile and save using CMD + x + Enter
alias composer="php /usr/local/bin/composer.phar"

# once file is saved we need to run following command to activate our changes
source ~/.bash_profile

# finally, composer installed on mac os and you can verify using any of
# the following commands
composer --version
composer --V

Cài đặt composer trên Linux hoặc Ubuntu

Mở Terminal lên và nhập lần lượt từng dòng lệnh sau:

# update package manager first
sudo apt-get update

# make sure you have curl installed first
# if you do not have curl installed run following
# command to install curl on your linux operating system
sudo apt-get install curl

# install composer globally
curl -sS https://getcomposer.org/installer | sudo php -- --install-dir=/usr/local/bin --filename=composer

# verify the composer installation
composer -V

Cài đặt composer trên Windows

Tải xuống và chạy file Composer-Setup.exe. Quá trình cài đặt này bao gồm việc quản lý Composer tới biến PATH. Composer sau khi cài đặt cho phép bạn có thể mở command prompt để gọi bất kỳ thư mục nào trong dòng lệnh của mình.

Composer hoạt động như thế nào?

Sau khi bạn cài đặt composer trên máy tính, hãy thực hiện các bước dưới đây:

  • Bước 1: Tạo tệp composer.json
  • Bước 2: Mở cửa sổ terminal và đi tới thư mục gốc.
  • Bước 3: Chạy lệnh cài đặt composer với câu lệnh require_once ‘vendor/autoload.php’.

Lệnh này sẽ kiểm tra và tạo các thư mục mới, trong đó bao gồm các dòng lệnh trong PHP. Sau đó chương trình sẽ tự động cập nhật các phiên bản đã cài đặt trên thư viện của dự án.

Cách cài đặt và cập nhật một thư viện hoặc gói mới trong composer

Để cài đặt một thư viện php mới, chọn các lệnh sau:

# install a new library
composer require facebook/php-sdk

# update all packages except dev dependencies
composer update --no-dev

# install all packages except dev dependencies
composer install --no-dev

Làm cách nào để thêm author block trong tệp composer.json?

Để thêm author block trong tệp composer, hãy thêm các dòng code sau:

{
    "authors": [
        {
            "role": "Developer",
            "name": "Sandip Patel",
            "email": "sandip@learn2torials.com",
            "homepage": "https://www.learn2torials.com"
        },
        {
            "role": "Developer",
            "name": "Dhruti Patel",
            "email": "dhruti@learn2torials.com",
            "homepage": "https://www.learn2torials.com"
        }
    ]
}

Làm cách nào để thêm thông tin hỗ trợ dự án trong tệp composer.json?

Để thêm chi tiết dự án hoặc thông tin hỗ trợ, hãy thêm những dòng code sau vào tệp composer.json:

{
"support": {
"email": "support@example.org",
"irc": "ENTER_URL_HERE",
"wiki": "ENTER_URL_HERE",
"rss": "ENTER_URL_HERE",
"chat": "ENTER_URL_HERE",
"issues": "ENTER_URL_HERE",
"docs": "ENTER_URL_HERE",
"source": "ENTER_URL_HERE",
"forum": "ENTER_URL_HERE"
}
}

Làm cách nào để cài đặt một phiên bản cụ thể của gói thư viện bằng Composer?

Sau đây là một số phương pháp để cài đặt phiên bản cụ thể của gói thư viện:

# Syntax - 1 
composer require vendor/package version

# Syntax - 2
composer require vendor/package:version

# Examples
composer require vendor/package:2.0
composer require vendor/package 0.1
composer require vendor/package "^0.1"
composer require "vendor/package":"^1.5.0"

Làm cách nào để xóa các phần phụ thuộc rác khỏi composer?

Để loại bỏ các phần không sử dụng đến, hãy chạy các lệnh sau:

# Example - 1
composer remove vendor/package

# Example - 2
composer remove vendor/package --update-with-dependencies

Làm cách nào để thêm một gói thư viện từ kho VCS?

Để thêm một gói thư viện từ kho VCS, hãy thêm dòng code sau vào tệp composer.json:

{
    "require": {
        "user/repo": "dev-master"
    },
    "repositories": [
        {
            "type": "vcs",
            "url": "https://github.com/user/repo"
        }
    ]
}

Làm thế nào để thêm gói thư viện cục bộ bằng cách sử dụng composer?

Để thêm gói thư viện cục bộ, hãy thêm đoạn code sau vào tệp composer.json:

{
    "require": {
        "my/package": "*"
    },
    "repositories": [
        {
            "type": "path",
            "url": "../../packages/my-package",
            "options": {
                "symlink": true // disabling mirroring
            }
        }
    ]
}

Làm thế nào để lấy danh sách tất cả các gói đã cài đặt với số phiên bản?

Để liệt kê tất cả các gói đã cài đặt trong một dự án, hãy chạy các lệnh sau:

# show globally installed packages
composer global show -i -t

# show packages installed in project
composer show -i -t

Làm thế nào để triển khai chính xác composer trong môi trường Prod?

Làm theo các bước bên dưới để sử dụng chính xác composer trong môi trường Prod:

  • Sử dụng sudo user để chạy toàn bộ composer.
  • Thêm thư mục nhà cung cấp vào tệp .gitignore.
  • Tạo dự án của bạn trong môi trường Prod
  • Chạy lệnh composer install –no-dev
  • Không sử dụng sudo trước lệnh cài đặt và cập nhật.

Tự động tải PSR4

PSR trong PHP giúp viết code chuẩn và phát hiện các sai sót khi kiểm tra. PSR 4 là tiêu chuẩn về đặt tên namespace và cách tải các thư viện PHP tự động.

Để thêm “psr-4” vào thư mục, hãy thêm đoạn code sau vào tệp composer.json:

{
    "autoload": {
        "psr-4": {
            "App\\": "src/",
            "Monolog\\": ["src/", "lib/"]
        }
    }
}

Thư mục src được tạo vào theo sau APP làm namespace.

Giả sử bạn có cấu trúc thư mục sau và namespace psr4 được viết lại:

src
|- Models
|- User.php -> namespace App/Models/User;
|- Role.php -> namespace App/Models/Role;

Làm thế nào để chạy các tệp chung bằng cách sử dụng composer?

Để chạy các tệp được yêu cầu, hãy thêm đoạn code sau vào tệp composer.json:

{
    "autoload": {
        "files": [
            "src/functions.php"
        ]
    }
}

Tổng kết về composer

Composer là một công cụ tuyệt vời dành cho các lập trình viên PHP cho phép quản lý các gói thư viện một cách dễ dàng. Với công cụ này, việc quản lý thư viện sẽ trở nên đơn giản hơn, giúp cho các lập trình viên dễ làm việc hơn. Nhưng bên cạnh đó còn nhiều thông tin khác mà các lập trình viên PHP sẽ rất cần đến.

Nếu bạn còn bất cứ câu hỏi nào liên quan đến Composer, hãy để lại bình luận ở bên dưới, BKHOST sẽ trả lời bạn trong thời gian sớm nhất.

P/s: Bạn cũng có thể truy cập vào Blog của BKHOST để đọc thêm các bài viết chia sẻ kiến thức về lập trình, quản trị mạng, website, domain, hosting, vps, server, email,… Chúc bạn thành công.

Đăng ký dịch vụ Hosting Giá Rẻ tại BKHOST

BKHOST đang có chương trình khuyến mãi cực shock dành cho khách hàng đăng ký dịch vụ Hosting Giá Rẻ:

  • Giảm giá lên đến 40%
  • Chi từ 9k/tháng.
  • Miễn phí gói bảo mật SSL Let’s Encrypt.

Đăng ký ngay:

Hosting giá rẻ

Tôi là Trịnh Duy Thanh, CEO & Founder Công ty Cổ Phần Giải Pháp Mạng Trực Tuyến Việt Nam - BKHOST. Với sứ mệnh mang tới các dịch vụ trên Internet tốt nhất cho các cá nhân và doanh nghiệp trong nước và quốc tế, tôi luôn nỗ lực hết mình nâng cấp đầu tư hệ thống phần cứng, nâng cao chất lượng dịch vụ chăm sóc khách hàng để đem đến những sản phẩm hoàn hảo nhất cho người tiêu dùng. Vì vậy, tôi tin tưởng sẽ đem đến các giải pháp CNTT mới nhất, tối ưu nhất, hiệu quả nhất và chi phí hợp lý nhất cho tất cả các doanh nghiệp.
Bình luận

Thanh toán linh hoạt

Chúng tôi chấp nhận thanh toán như ATM, Visa, Internet Banking, Paypal, Baokim, Ngân lượng

Gọi ĐT tư vấn ngay
Chat ngay qua Zalo
Chat ngay qua Messenger