Composer for PHP là gì và cách cài đặt nó
09/09/2022 01:36
Composer đã trở thành tiêu chuẩn thực tế để quản lý các phụ thuộc của dự án trong PHP. Trong bài viết này, chúng tôi đã giới thiệu cho các bạn những điều cơ bản về Composer và cách cài đặt nó.
Hôm nay, chúng ta sẽ thảo luận về một trong những công cụ quan trọng nhất trong PHP: Composer trình quản lý phụ thuộc. Trong bài viết này, chúng ta sẽ xem xét các thông tin chi tiết của Composer cũng như cách cài đặt và sử dụng nó trong quá trình phát triển PHP hàng ngày của bạn.
Nếu bạn đã viết mã bằng PHP một thời gian, bạn sẽ biết cách các thư viện PHP có thể giúp tiết kiệm công việc và làm cho mã có thể sử dụng lại được. Trước đây, việc thêm các thư viện vào PHP ngày càng khó khăn hơn, dẫn đến việc phải phát minh lại rất nhiều bánh xe cho các tính năng phổ biến. Ví dụ, một lớp trừu tượng cơ sở dữ liệu (DAL) là thứ bắt buộc phải có đối với bất kỳ ứng dụng PHP nào, nhưng không có thư viện hoặc gói tiêu chuẩn, vì vậy nhiều người cuối cùng đã phát triển riêng của họ.
Chắc chắn, có rất nhiều tùy chọn có sẵn vào thời điểm đó, nhưng rất khó để thêm các phụ thuộc, để theo dõi chúng và quản lý ứng dụng của bạn về lâu dài. Đó là nơi mà một trình quản lý phụ thuộc như Composer xuất hiện. Thực tế, trước Composer, có một công cụ phổ biến gọi là PEAR được sử dụng để quản lý các phần mở rộng và thư viện PHP. Nhưng nó có những hạn chế riêng, mà Nhà composer được tạo ra để giải quyết.
Tóm lại, chúng ta cần một công cụ có thể được sử dụng để cài đặt thư viện và quản lý các phần phụ thuộc của ứng dụng. Nhà composer làm rất tốt điều này. Nó là một trình quản lý gói cấp ứng dụng cho PHP đã trở nên phổ biến rộng rãi và trở thành tiêu chuẩn thực tế để quản lý các phần phụ thuộc trong các ứng dụng PHP.
Composer trong PHP là gì?
Composer cho phép bạn cài đặt các thư viện cần thiết trên cơ sở mỗi dự án. Nó cho phép bạn sử dụng các phiên bản khác nhau của cùng một thư viện trên các dự án PHP khác nhau. Tất nhiên, có một tùy chọn để cài đặt một thư viện trên toàn cầu, nhưng nó không được khuyến khích. Nếu bạn đã nghe nói về npm cho Node.js hoặc Bundler cho Ruby, thì đó chính là Composer dành cho PHP.
Để cài đặt và sử dụng các thư viện do Composer quản lý, bạn chỉ cần khai báo chúng trong dự án của mình ở định dạng chuẩn và Composer sẽ quản lý phần còn lại. Ví dụ: nếu bạn muốn cài đặt thư viện phpmailer bằng cách sử dụng Composer, bạn chỉ cần chạy lệnh sau trong thư viện gốc của dự án của bạn.
1
|
$composer require phpmailer /phpmailer |
Điều này cài đặt thư viện phpmailer và các phụ thuộc của nó trong thư mục nhà cung cấp trong dự án của bạn. Quan trọng hơn, nó cũng tạo ra các tệp composer.json và composer.lock sẽ được sử dụng để theo dõi các phần phụ thuộc trong dự án của bạn. Chúng tôi sẽ quay lại vấn đề này một cách chi tiết ở phần sau của bài viết này.
Trên thực tế, Composer đã trở thành một tiêu chuẩn toàn cầu khi nói đến việc quản lý các thư viện PHP của bên thứ ba. Các framework PHP phổ biến như Symfony, Laravel, Drupal và nhiều framework khác đã áp dụng quy trình làm việc dựa trên Composer trong vòng đời phát triển của chúng.
Trong phần tiếp theo, chúng ta sẽ xem cách cài đặt Composer.
Cách cài đặt Composer
Khi nói đến cài đặt Composer, có hai cách. Bạn có thể cài đặt nó cục bộ trên cơ sở từng dự án hoặc trên toàn cầu. Chúng tôi sẽ cài đặt nó trên toàn cầu để nó có thể được sử dụng trên các dự án khác nhau.
Cách cài đặt Composer trên * nix và macOS
Đối với các hệ thống dựa trên * nix — Linux và Unix — chỉ cần một lệnh duy nhất để cài đặt và chạy Composer ngay lập tức. Tiếp tục và chạy lệnh sau trong thiết bị đầu cuối của bạn.
1
2
3
4
5
6
|
$curl -s https: //getcomposer .org /installer | php All settings correct for using Composer Downloading... Composer (version 1.10.6) successfully installed to: /home/sajal/composer .phar Use it: php composer.phar |
Và cùng với đó, Composer đã được cài đặt cục bộ và bạn đã sẵn sàng sử dụng nó bằng php composer.phar
lệnh! Tuy nhiên, chúng tôi muốn cài đặt nó trên toàn cầu, vì vậy hãy thực hiện điều đó bằng cách thực hiện lệnh sau.
1
|
$ sudo mv . /composer .phar /usr/bin/composer |
Bây giờ, bạn sẽ có thể sử dụng Composer trên toàn cầu. Hãy tiếp tục và kiểm tra nó để xem nó đã được cài đặt thành công hay chưa.
1
2
|
$composer --version Composer version 1.10.6 2020-05-06 10:28:10 |
Mặt khác, nếu bạn đã cài đặt Composer cục bộ, bạn sẽ chạy php composer.phar --version
lệnh.
Vì vậy, như bạn có thể thấy, việc cài đặt Composer trên các hệ thống dựa trên Linux và Unix khá đơn giản. Trong phần tiếp theo, chúng ta sẽ xem cách cài đặt nó trên hệ thống Windows.
Cách cài đặt Composer trên Windows
Đối với người dùng Windows, cài đặt Composer thậm chí còn dễ dàng hơn. Bạn chỉ cần tải xuống tệp thực thi thiết lập Composer và chạy nó. Làm theo các bước cài đặt và nó sẽ cài đặt phiên bản Composer mới nhất. Bạn sẽ có thể chạy các lệnh của Composer ngay lập tức.
Điều quan trọng cần lưu ý là bạn cần khởi động lại thiết bị đầu cuối của mình sau khi đã cài đặt Trình composer vì PATH
biến chỉ được tải khi thiết bị đầu cuối được khởi động.
Packagist là gì?
Bây giờ, bạn đã biết những điều cơ bản về Composer và cách cài đặt nó. Câu hỏi tiếp theo là: làm thế nào để bạn biết những thư viện nào có sẵn mà bạn có thể cài đặt với Composer? Có kho lưu trữ trung tâm nào nơi Composer lưu giữ danh sách các thư viện có sẵn không?
Có: Packagist.
Packagist là kho lưu trữ gói Composer mặc định từ nơi Composer kéo các thư viện và các phụ thuộc của nó khi bạn yêu cầu nó cài đặt một thư viện cụ thể. Có hàng trăm thư viện có sẵn trên Packagist, điều này cho thấy mức độ phổ biến của Composer. Trong các dự án PHP của mình, nếu bạn cần một tính năng mà bạn cho rằng đã có sẵn dưới dạng thư viện của bên thứ ba, thì Packagist là nơi đầu tiên bạn nên kiểm tra!
Khi nói đến việc tìm kiếm thư viện, Composer cũng có khả năng nhìn xa hơn kho lưu trữ Packagist. Bạn có thể yêu cầu Composer xem xét các kho lưu trữ khác ngoài Packagist để cài đặt thư viện bằng cách thay đổi repositories
khóa trong composer.json
tệp. Trên thực tế, đây là những gì bạn sẽ làm nếu muốn quản lý các gói Trình composer riêng tư của mình.
Trong phần tiếp theo, chúng ta sẽ xem cách sử dụng Composer để cài đặt thư viện trong các dự án PHP của bạn.
Cách sử dụng Composer
Hầu hết, có hai cách để cài đặt thư viện với Composer. Chúng ta hãy nhanh chóng lướt qua nó để hiểu nó hoạt động như thế nào.
install
Lệnh _
Để sử dụng install
, trước tiên bạn cần tạo tệp composer.json trong dự án của mình. Trong tệp composer.json , bạn chỉ cần khai báo các phụ thuộc dự án của mình, như được hiển thị trong đoạn mã sau.
1
2
3
4
5
|
{ "require" : { "phpmailer/phpmailer" : "~6.1" } } |
Tiếp theo, khi bạn chạy composer install
lệnh từ thư mục đó, Composer sẽ cài đặt gói phpmailer và các gói phụ thuộc của nó trong thư mục của nhà cung cấp . Quan trọng hơn, nó cũng tạo tệp composer.lock , tệp này duy trì danh sách tất cả các gói và phiên bản chính xác của chúng đã được cài đặt.
Đó là hướng dẫn ngắn gọn để cài đặt Composer trên các hệ điều hành khác nhau.
require
Lệnh _
Chúng ta có thể nói rằng composer require
lệnh là một loại phím tắt cho quá trình tạo tệp composer.json trước đó. require
sẽ tự động thêm một gói vào tệp composer.json của bạn. Lệnh sau đây cho thấy cách cài đặt gói phpmailer với sự trợ giúp của require
.
1
|
$composer require phpmailer /phpmailer |
Sau khi cài đặt gói phpmailer và các phụ thuộc của nó, require
cũng thêm một mục nhập của gói được cài đặt trong tệp composer.json . Nếu tệp composer.json không tồn tại, tệp này sẽ được tạo nhanh chóng. Tất nhiên, nó cũng cập nhật tệp composer.lock để ghi thông tin gói, cùng với các phiên bản chính xác.
Vì vậy, đó là cách bạn có thể cài đặt các phụ thuộc cần thiết trong các dự án PHP của mình bằng cách sử dụng Composer. Và cùng với đó, chúng tôi cũng đã đi đến phần cuối của bài viết này.