PHP에서 전역에 대한 의존 중단: 더욱 깔끔한 코드에 종속성 주입을 수용
왜 전역 사용을 피해야 합니까?
전역 변수는 함수와 전역 범위 사이에 숨겨진 종속성을 생성하여 코드를 긴밀하게 결합하고 유지하기가 어렵습니다. 종속성 주입은 필요한 데이터를 매개변수로 명시적으로 전달하여 더 나은 접근 방식을 제공합니다.
종속성 주입의 예
function.php의 구성에 액세스하기 위해 전역을 사용하는 대신 이를 주입합니다. 인수로 함수에 추가:
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) }
데이터베이스 기반용 ConfigManager 구현 구성
데이터베이스에서 구성을 로드하려면 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; } }
다른 변수 및 종속성 통합
종속성 사용 $db, $언어 등과 같은 추가 변수 또는 종속성을 함수 및 클래스에 전달하기 위한 주입 필요합니다.
종속성 주입의 이점
위 내용은 PHP에서 전역 변수를 버리고 종속성 주입을 수용해야 하는 이유는 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!