Hướng dẫn dùng php env trong PHP

  • Hôm nay mình sẽ hướng dẫn mọi người cách sử dụng environment variable trong Spring Boot và sẽ có những bạn đọc tiêu đề bài này của mình sẽ hỏi là environment variable này được dùng để làm gì. Mình xin được giải thích sơ qua việc vì sao nên sử dụng environment variable như sau đó là mọi chuyện sẽ không có khó khăn gì nếu bạn chỉ code và chạy ứng dụng ở trên máy của mình khi đó ta chỉ cần sử dụng một loại cơ sở dữ liệu như là mysql, sqlserver, … bạn sẽ có thể cấu hình file application.properties chỉ để sử dụng một loại cơ sở dữ liệu đó. Và cả khi bạn deploy ứng dụng cả mình lên heroku hay bất kỳ server nào khác điều đó có nghĩa là bạn sẽ phải sử dụng một cơ sở dữ liệu khác trên server, khi đó nếu chúng ta không sử dụng environment variable thì mỗi khi chúng ta deploy ứng dụng chạy trên server lại phải chỉnh sửa cấu hình file application.properties thành cấu hình của cơ sở dữ liệu trên server và khi chạy trên local thì lại phải sửa về cơ sở dữ liệu của máy mình điều này làm cho chúng ta tốn khá nhiều thời gian trong việc code. Vì vậy mình sẽ hướng dẫn mọi người dùng biến môi trường để giải quyết vấn đề này.
  • Trước tiên chúng ta sẽ tạo một file có tên là local.env để sử dụng trên máy mình

  • Và trong application.properties chúng ta cấu hình như sau:

  • Và trong file local.env vừa tạo chúng ta sẽ gán các giá trị cho các biến bên trong ${:}

  • Vậy là chúng ta đã cấu hình xong biến môi trường và để chạy trên local các bạn file tải thêm plugin EnvFile. Trong Intellij bạn chọn file -> setting -> plugins -> tìm EnvFile -> install

  • Sau khi cài đặt xong plugin chúng ta sẽ làm như trong hình sau đó chọn edit configuration:

  • Và ở giao diện tiếp theo chúng ta sẽ chọn thẻ EnvFile và chọn dấu cộng để thêm file local.env vừa tạo

  • Sau đó ta nhấn ok, vậy là ta đã có thể sử dụng được biến env trong spring boot

Author :Nguyễn Minh Quân

Đăng ký nhận bộ tài liệu kỹ năng dành cho lập trình viên (video hướng dẫn + slide) tại đây

Tìm hiểu thêm về mô hình Coding Bootcamp tại đây

Lập trình web với PHP chắc các bạn đã từng làm việc với các biến môi trường (Environment variables) thường được biết đến với tên gọi tắt là ENV. Hiện nay, các hệ điều hành phổ biến như Windows, macOS hay Linux đều hỗ trợ khởi tạo các biến môi trường. Ưu điểm của việc sử dụng các biến môi trường là sẽ giúp thông tin lưu trữ trong các biến được an toàn hơn so với cách khởi tạo biến thông thường trong tập tin PHP. Với ưu điểm này, các thông tin quan trọng như thông tin kết nối cơ sở dữ liệu chẳng hạn thường được các lập trình viên lưu trữ trong biến môi trường.

Với ưu điểm của việc sử dụng biến môi trường như vậy nên các bạn cũng cân nhắc sử dụng. Tuy nhiên có một điều hơi khó khăn đối với các bạn mới tiếp cận giải pháp này đó là việc tạo và quản lý các biến môi trường có một chút khó khăn đối với các bạn không am hiểu về hệ điều hành. Vì vậy, tôi giới thiệu với các bạn một giải pháp thay thế đó là sử dụng thư viện PHP dotenv để quản lý các biến môi trường một cách dễ dàng.

Nhiệm vụ chính của thư viện PHP dotenv đó là nạp và quản lý các biến môi trường được khai báo từ tập tin .env đặt trong một thư mục nào đó, giúp các bạn có thể truy xuất các biến môi trường này một cách dễ dàng với hàm getenv, biến $_ENV và $_SERVER do PHP cung cấp.

Việc sử dụng thư viện PHP dotenv cũng rất đơn giản, các bạn cài đặt thư viện với dòng lệnh Composer như sau:

Code:

composer require vlucas/phpdotenv

Bây giờ, các bạn cài đặt thư viện PHP dotenv để nạp các biến môi trường được khai báo trong tập tin .env như ví dụ sau:

PHP:

load();

Sau khi nạp các biến môi trường được khai báo trong tập tin .env thì các bạn đã có thể gọi các biến môi trường đó trong PHP với hàm getenv, biến $_ENV và $_SERVER được rồi.

Các bạn có thể tìm hiểu thêm về thư viện PHP dotenv tại địa chỉ https://packagist.org/packages/vlucas/phpdotenv.