Làm cách nào để cài đặt một phiên bản cụ thể của PHP?

Composer là trình quản lý gói cho ngôn ngữ lập trình PHP. Bạn có thể sử dụng nó để cài đặt hoặc cập nhật các gói, quản lý các phần phụ thuộc của chúng và nhiều thứ khác. Theo mặc định, Trình soạn thảo cài đặt phiên bản mới nhất của gói bắt buộc

Nhưng bạn có thể cài đặt bất kỳ phiên bản cụ thể nào mà bạn muốn. Trong bài viết ngắn này, tôi sẽ hướng dẫn bạn cách cài đặt một phiên bản cụ thể của gói bằng Composer

Mục lục

Cách chỉ định phiên bản gói trong Trình soạn thảo

1. Phiên bản có sẵn

Các gói Trình soạn thảo thường sử dụng Git để lưu trữ các tệp của chúng. Vì vậy, Trình soạn thảo sử dụng thẻ Git làm phiên bản gói. Bạn có thể tìm thấy tất cả các phiên bản có sẵn cho một gói cụ thể bằng lệnh sau

composer show --all laravel/framework
Làm cách nào để cài đặt một phiên bản cụ thể của PHP?

Nhìn vào dòng phiên bản. Ngoài ra, bạn có thể tìm thông tin về các phiên bản có sẵn trên trang web chính thức. mở nhà đóng gói. org và tìm gói được yêu cầu bằng trường tìm kiếm. Bạn sẽ thấy thông tin về các phiên bản có sẵn ở thanh bên phải

Làm cách nào để cài đặt một phiên bản cụ thể của PHP?

Nếu bạn có quyền truy cập vào kho lưu trữ, bạn chỉ có thể hiển thị các thẻ có sẵn

git tag
Làm cách nào để cài đặt một phiên bản cụ thể của PHP?

Phiên bản mà bạn có thể chỉ định trong dòng lệnh khi cài đặt gói hoặc trong trình soạn thảo. json, không chỉ là một phiên bản. Đó là một ràng buộc phiên bản, được sử dụng để xác định phiên bản tối đa của gói có thể được sử dụng.

2. Ràng buộc phiên bản

Chúng ta hãy xem xét những hạn chế này. Đây là phổ biến nhất trong số họ

  • x. x. x – bạn chỉ có thể đặt một phiên bản cụ thể, điều này có nghĩa là Composer sẽ không thể cập nhật gói này
  • x. x. * – dấu hoa thị có nghĩa là bất kỳ số nào, vì vậy nếu bạn đặt phiên bản thành 1. 1. * người quản lý gói sẽ có thể cập nhật nó lên phiên bản 1. 1. 2 – 1. 1. 9 phiên bản nhưng không phải 1. 2. 0
  • ^. x. x. x – cho phép Composer cập nhật gói cho đến khi phiên bản mới không phá vỡ khả năng tương thích ngược. Ví dụ: nếu bạn viết ^1. 1. 1, Nhà soạn nhạc có thể cập nhật gói thành 1. 1. 4 hoặc 1. 2. 0 nhưng không phải phiên bản chính tiếp theo – 2. 0. 0
  • >=x. x. x – các phiên bản được phép cao hơn hoặc bằng phiên bản được chỉ định
  • <=x.x.x – allowed versions that are lower or equal than the specified one.
  • ~x. x. x – ràng buộc này chỉ cho phép thay đổi số cuối cùng trong phiên bản. Ví dụ: nếu bạn viết ~1. 2 trình quản lý gói có thể cài đặt gói với phiên bản 1. 0 hoặc 1. 9

Ngoài ra, bạn có thể sử dụng tên chi nhánh cụ thể thay vì thẻ. Ví dụ: nếu bạn muốn Composer luôn cài đặt phiên bản mới nhất của gói, bạn có thể chỉ định nhánh chính làm phiên bản. Nhưng nếu bạn dùng tên nhánh làm phiên bản thì nên thêm tiền tố dev- vào đó. Ví dụ: dev master

Theo mặc định, khi bạn yêu cầu bất kỳ gói nào mà không chỉ định phiên bản, Trình soạn thảo sẽ sử dụng phiên bản mới nhất đáp ứng các phụ thuộc của các gói đã cài đặt khác. Nhà soạn nhạc thêm phiên bản này vào nhà soạn nhạc. json với ràng buộc dấu nháy ^

3. Chỉ định phiên bản để cài đặt

Nếu bạn muốn chỉ định phiên bản cho bất kỳ gói Composer nào trong khi cài đặt, chỉ cần thêm số phiên bản vào sau tên gói. Ví dụ

composer require laravel/framework 9.36.1

Hoặc

composer require laravel/framework:9.36.1

Bạn cũng có thể sử dụng các ràng buộc phiên bản tại đây. Nhưng bạn nên thêm dấu ngoặc kép để tránh lỗi từ shell

composer require laravel/framework "^9.36.1"

Hoặc bạn có thể muốn cài đặt phiên bản phát triển mới nhất của gói

composer require laravel/framework dev-master

Lưu ý rằng bạn nên đặt độ ổn định tối thiểu thành dev trong trình soạn nhạc của mình. tập tin json

Làm cách nào để cài đặt một phiên bản cụ thể của PHP?

Hoặc bạn có thể đặt độ ổn định của gói với phiên bản sử dụng ký tự @

composer require laravel/framework dev-master@dev

Nếu bạn muốn ghi đè bất kỳ gói nào bằng gói cục bộ, bạn không phải thay đổi phiên bản hoặc tên trong đó. Các gói cục bộ có mức độ ưu tiên cao hơn các gói từ kho lưu trữ. Vì vậy, nếu bạn đã thêm kho lưu trữ chính xác, Trình soạn thảo sẽ tìm gói cục bộ trước

4. Chỉ định phiên bản để cập nhật

Trong trường hợp đơn giản, bạn chỉ có thể thay đổi phiên bản gói trong trình soạn thảo. json thành tệp cần thiết và chạy lệnh sau

composer update

Hoặc bạn có thể sử dụng lệnh yêu cầu tương tự. Nó sẽ cập nhật hoặc hạ cấp gói xuống phiên bản đã chọn nếu có thể

composer require laravel/framework:9.36.1
Làm cách nào để cài đặt một phiên bản cụ thể của PHP?

Nhưng trong nhiều trường hợp, việc cập nhật hoặc hạ cấp các gói khá khó khăn. Bởi vì mọi gói đã cài đặt đều phụ thuộc vào một số gói và có thể phụ thuộc vào các gói khác. Thay đổi phiên bản của nó có thể tạo ra một địa ngục phụ thuộc. Theo tôi, cách đơn giản nhất để giải quyết vấn đề này là trình tự này. xóa tất cả các gói có xung đột, cài đặt gói mà bạn muốn với phiên bản được yêu cầu, sau đó, cài đặt lại tất cả các gói đã xóa phụ thuộc vào gói đó hoặc các phần phụ thuộc của gói đó.

kết thúc

Trong bài viết ngắn này, tôi đã giải thích cách cài đặt một phiên bản cụ thể của gói bằng Composer. Như bạn có thể thấy nó rất dễ dàng. Hệ thống phiên bản có thể khá khó hiểu, nhưng bạn không cần phải biết tất cả các ràng buộc

Làm cách nào để cài đặt một phiên bản PHP nhất định?

Tóm lại những gì bạn cần làm là. .
Đảm bảo các gói php cho phiên bản bạn muốn đã được cài đặt
Cập nhật bất kỳ cấu hình nào cho phiên bản PHP đó
Cập nhật cấu hình máy chủ web của bạn để trỏ đến đúng phiên bản PHP
Trỏ PHP CLI đến đúng phiên bản PHP
Khởi động lại máy chủ web của bạn và php-fpm
Mặt nạ trình nền php-fpm cũ

Làm cách nào để cài đặt phiên bản cụ thể của PHP trong Windows?

Thực hiện theo các bước dưới đây để cài đặt PHP trên Windows. Bước 1. Truy cập https. //www. php. net/trang web bằng bất kỳ trình duyệt web nào và nhấp vào Tải xuống. Bước 2. Nhấp vào nút "Tải xuống" của Windows. Bước 3. Trang web mới có các tùy chọn khác nhau, chọn phiên bản Chủ đề an toàn và nhấp vào nút zip và Tải xuống

Làm cách nào để cài đặt phiên bản cụ thể của PHP trong Ubuntu?

Cài đặt PHP (5. 6, 7. .
Trước tiên, hãy bắt đầu bằng cách thêm Ondřej Surý PPA để cài đặt các phiên bản PHP khác nhau – PHP 5. 6, PHP7. x và PHP 8. 0 trên hệ thống Ubuntu. .
Tiếp theo, cập nhật hệ thống như sau. $ sudo apt-get cập nhật
Bây giờ hãy cài đặt các phiên bản PHP được hỗ trợ khác nhau như sau

Làm cách nào để cài đặt phiên bản cụ thể của PHP trong Mac?

Cấu hình PHP .
Bạn sẽ cần cài đặt Homebrew để có thể truy cập PHP 8. 1 và các gói khác. .
Trong terminal macOS, thực thi brew update để cập nhật Brew
Sử dụng lệnh brew install shivammathur/php/php@8. 1 để cài đặt PHP 8. 1