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

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 setup những thư viện theo cách thủ công bằng tay gây ra nhiều rắc rối như không hoàn thành xong update hay không đủ điều kiện kèm theo tải xuống. Giờ đây, Composer đã làm đổi khác trọn vẹn mọi thứ .Trong bài viết dưới đây BKHOST sẽ cùng bạn đi khám phá về Composer – một công cụ quản trị thư viện bảo đảm an toàn !

Composer là gì ?

composer la gi

Composer là một trình quản lý sự phụ thuộc 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.

Composer là một mã nguồn mở ( OpenSource ) nên được hội đồng tương hỗ rất nhiều, bạn hoàn toàn có thể tham gia tăng trưởng, tăng trưởng lại từ trang Github chính thức của Composer .Nhưng ưu điểm của Composer so với cách thủ công bằng tay là gì ? Hãy so sánh những đặc thù dưới đây :Cách để setup thư viện theo giải pháp thủ công bằng tay :

  • 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ý setup thuận tiện 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 hoàn toàn có thể thiết lập và sử dụng hiệu suất cao trên nhiều hệ quản lý và đ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 setup này gồm có việc quản trị Composer tới biến PATH. Composer sau khi setup được cho phép bạn hoàn toà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 giải trí như thế nào ?

Sau khi bạn setup composer trên máy tính, hãy thực thi những 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 những thư mục mới, trong đó gồm có những dòng lệnh trong PHP. Sau đó chương trình sẽ tự động hóa update những phiên bản đã setup trên thư viện của dự án Bất Động Sản .

Cách setup và update 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": "[email protected]",
            "homepage": "https://www.learn2torials.com"
        },
        {
            "role": "Developer",
            "name": "Dhruti Patel",
            "email": "[email protected]",
            "homepage": "https://www.learn2torials.com"
        }
    ]
}

Làm cách nào để thêm thông tin tương hỗ dự án Bất Động Sản trong tệp composer.json ?

Để thêm chi tiết cụ thể dự án Bất Động Sản hoặc thông tin tương hỗ, hãy thêm những dòng code sau vào tệp composer.json :

{
"support": {
"email": "[email protected]",
"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 để thiết lập một phiên bản đơn cử 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 những 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 list toàn bộ những gói đã thiết lập với số phiên bản ?

Để liệt kê tổng thể những gói đã thiết lập trong một dự án Bất Động Sản, hãy chạy những 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 để tiến hành đúng mực composer trong môi trường tự nhiên Prod ?

Làm theo những bước bên dưới để sử dụng đúng mực composer trong thiên nhiên và 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 những sai sót khi kiểm tra. PSR 4 là tiêu chuẩn về đặt tên namespace và cách tải những thư viện PHP tự động hóa .Để 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 những tệp chung bằng cách sử dụng composer ?

Để chạy những tệp được nhu yế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 kỳ câu hỏi nào tương quan đến Composer, hãy để lại phản hồi ở bên dưới, BKHOST sẽ vấn đáp bạn trong thời hạn sớm nhất .P / s : Bạn cũng hoàn toàn có thể truy vấn vào Blog của BKHOST để đọc thêm những bài viết san sẻ kỹ năng và 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 xuất sắc .