Berhenti bergantung pada global dalam PHP: Terima Suntikan Ketergantungan untuk Kod Lebih Bersih
Mengapa Anda Perlu Mengelak Menggunakan global?
Pembolehubah global mencipta pergantungan tersembunyi antara fungsi dan skop global, menjadikan kod anda berganding rapat dan sukar diselenggara. Suntikan Ketergantungan menyediakan pendekatan yang lebih baik dengan menghantar data yang diperlukan secara eksplisit sebagai parameter.
Contoh Suntikan Ketergantungan
Daripada menggunakan global untuk mengakses konfigurasi dalam function.php, masukkannya ke dalam fungsi sebagai hujah:
function conversion($Exec, $Param = array(), $Log = '') { // Inject the configuration data as $config $config = $this->getConfig(); $cmd = $config['phppath'] . ' ' . $config['base_path'] . '/' . $Exec; // ... (rest of the function) }
Melaksanakan ConfigManager untuk Konfigurasi Dipacu Pangkalan Data
Untuk memuatkan konfigurasi daripada pangkalan data, cipta kelas ConfigManager:
class ConfigManager { public function loadConfigurationFromDatabase(Database $db) { $result = $db->query('SELECT ...'); $config = array(); while ($row = $result->fetchRow()) { $config[$row['name']] = $row['value']; } return $config; } }
Menggabungkan Pembolehubah dan Ketergantungan Lain
Gunakan suntikan kebergantungan untuk menghantar sebarang pembolehubah atau kebergantungan tambahan, seperti $db, $bahasa, dsb., ke dalam fungsi dan kelas mengikut keperluan.
Faedah Suntikan Ketergantungan
Atas ialah kandungan terperinci Mengapa Anda Harus Menolak Pembolehubah Global dalam PHP dan Menerima Suntikan Ketergantungan?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!