Pemboleh Ubah Persekitaran dan Fail .env
Urus konfigurasi sensitif dengan fail .env dan pustaka dotenv dalam PHP.
Pemboleh Ubah Persekitaran dan Fail .env ialah pelajaran PHP Academy percuma di CoddyKit. Ini ialah pelajaran 2 daripada 4. Anda boleh membaca keseluruhan pelajaran di bawah secara percuma — kemudian berlatih secara praktikal dalam pelayar menggunakan penyunting kod terbina dalam dan tutor kecerdasan buatan 24/7. Pelajaran ini merupakan sebahagian daripada laluan pembelajaran PHP Academy, dan kemajuan anda disegerakkan merentas web serta aplikasi CoddyKit. Kursus PHP Academy merangkumi sejumlah 4 pelajaran.
Mengapa Menggunakan Pemboleh Ubah Persekitaran?
Menyematkan kelayakan atau konfigurasi khusus persekitaran secara keras dalam kod sumber adalah tidak selamat dan menjadikan penerapan rapuh. Pemboleh ubah persekitaran mengasingkan konfigurasi daripada kod.
Fail .env
Fail .env mengandungi pasangan kunci-nilai yang dimuatkan ke dalam persekitaran semasa permulaan. Tambahkannya ke .gitignore — NEVER serahkannya kepada kawalan versi.
# .env
APP_ENV=production
APP_KEY=base64:...
DB_HOST=127.0.0.1
DB_NAME=myapp
DB_USER=myapp_user
DB_PASS=supersecret
REDIS_HOST=127.0.0.1
MAIL_HOST=smtp.mailtrap.ioIntegrasi .env Laravel
Laravel menggunakan vlucas/phpdotenv untuk memuatkan .env secara automatik. Akses nilainya dengan pembantu env().
<?php
$host = env("DB_HOST", "127.0.0.1"); // "127.0.0.1" is the defaultconfig() berbanding env()
Gunakan env() hanya dalam fail config/*.php. Di tempat lain, gunakan config("database.host") — cara ini berfungsi dengan betul bersama caching konfigurasi.
<?php
// In config/database.php:
"host" => env("DB_HOST", "127.0.0.1")
// In your service classes:
$host = config("database.connections.mysql.host");Menyimpan Konfigurasi dalam Cache
Simpan konfigurasi dalam cache untuk produksi supaya penghuraian .env pada setiap permintaan dapat dielakkan.
$ php artisan config:cache
# After changing .env:
$ php artisan config:clearPHP Biasa dengan phpdotenv
Gunakan vlucas/phpdotenv di luar Laravel.
$ composer require vlucas/phpdotenv
<?php
$dotenv = Dotenv\Dotenv::createImmutable(__DIR__);
$dotenv->load();
$host = $_ENV["DB_HOST"];Pemboleh Ubah Wajib
Paksa pemboleh ubah persekitaran wajib ditetapkan semasa permulaan untuk mengesan konfigurasi yang hilang lebih awal.
<?php
$dotenv->required(["DB_HOST", "DB_NAME", "DB_USER", "DB_PASS"]);
$dotenv->required(["DB_PORT"])->isInteger();Fail .env.example
Serahkan fail .env.example yang mengandungi semua nama pemboleh ubah tetapi tiada nilai. Pembangun menyalinnya ke .env dan mengisi nilai mereka sendiri.
Pemboleh Ubah Persekitaran pada Tahap Pelayan
Dalam produksi, tetapkan pemboleh ubah persekitaran pada tahap pelayan (fail perkhidmatan systemd, bendera Docker --env, rahsia Kubernetes) dan bukannya dalam fail .env.
# systemd service:
[Service]
Environment="APP_ENV=production"
Environment="DB_HOST=db.internal"Pengurusan Rahsia
Untuk kelayakan sensitif (kunci API, sijil), pertimbangkan pengurus rahsia: HashiCorp Vault, AWS Secrets Manager atau rahsia GitHub Actions untuk CI.
Ringkasan
Simpan semua konfigurasi khusus persekitaran dalam .env. Jangan sekali-kali serahkannya. Gunakan config() dalam kod aplikasi; env() hanya dalam fail konfigurasi. Simpan konfigurasi dalam cache untuk produksi dengan php artisan config:cache.
Semakan Ringkas
Di manakah anda patut memanggil env() dalam aplikasi Laravel?
Pelajari PHP dengan tutor kecerdasan buatan — percuma
Tulis dan jalankan kod sebenar dalam pelayar anda, dapatkan bantuan segera daripada tutor kecerdasan buatan yang tersedia 24/7, dan sambung semula dari tempat anda berhenti di web atau dalam aplikasi.
- Kursus
- 49
- Pelajaran
- 195
Soalan Lazim
Adakah pelajaran “Pemboleh Ubah Persekitaran dan Fail .env” percuma?
Ya — teks penuh “Pemboleh Ubah Persekitaran dan Fail .env” boleh dibaca secara percuma di web ini. Untuk berlatih secara interaktif menggunakan penyunting kod terbina dalam dan tutor kecerdasan buatan 24/7, serta membuka kunci baki kursus PHP Academy, tingkat taraf kepada CoddyKit PRO. Kursus PHP Academy merangkumi sejumlah 4 pelajaran.
Apakah yang akan saya pelajari dalam “Pemboleh Ubah Persekitaran dan Fail .env”?
Urus konfigurasi sensitif dengan fail .env dan pustaka dotenv dalam PHP. Anda berlatih PHP Academy menggunakan kod praktikal yang dijalankan terus dalam pelayar, manakala tutor kecerdasan buatan 24/7 menjawab soalan anda semasa anda mengikuti pelajaran.
Adakah saya memerlukan pengalaman untuk memulakan PHP Academy?
Tiada pengalaman terdahulu diperlukan. Pembelajaran PHP Academy di CoddyKit disusun untuk pelajar daripada peringkat pemula hingga lanjutan, jadi anda boleh bermula di sini atau dari awal dan belajar mengikut kadar anda sendiri. Ini ialah pelajaran 2 daripada 4.
Berapa lamakah pelajaran “Pemboleh Ubah Persekitaran dan Fail .env” diambil?
Kebanyakan pelajaran CoddyKit mengambil masa kira-kira 5–10 minit. Setiap pelajaran ringkas dan interaktif, jadi anda boleh membuat kemajuan secara berterusan dan menyambung tepat dari tempat anda berhenti di web atau aplikasi.
Bolehkah saya menulis dan menjalankan kod dalam pelajaran PHP Academy ini?
Ya. Setiap pelajaran PHP Academy menyertakan penyunting kod terbina dalam, jadi anda boleh menulis dan menjalankan kod sebenar terus dalam pelayar serta menerima maklum balas kecerdasan buatan serta-merta — tanpa memerlukan persediaan setempat.
Semua pelajaran dalam kursus ini
- Konfigurasi Nginx dan PHP-FPM
- Pemboleh Ubah Persekitaran dan Fail .env
- Melaksanakan dengan GitHub Actions
- Mendockerkan Aplikasi PHP