최근에 클래스를 사용하기 시작했습니다. 나는 꽤 오랫동안 프로 시저 프로그래밍을 사용 해왔다. 그래서 다소 어려웠다.PHP 클래스와 전역 변수
내 질문.
나는이 같은 클래스가있는 경우 :
class Example {
public $name;
public $whatever;
public $yearAdded
public function __construct($name, $whatever=NULL, $dateAdded)
{
some trival code here;
}
}
가 어떻게 $yearAdded
내가 다른 스크립트에서 다른 곳으로 설정 전역 변수를 사용할 수 있습니까? 예를 들어
:
global $currentYear = date('Y');
나는이 방법
new example($name, $whatever, $currentTime);
또는이에게 항상 $yearAdded
에 대한 $currentYear
를 사용하는 클래스 내에서 지정하는 방법을해야합니다.
당신은 현재의 타임 스탬프와 같은 것을 위해이 슈퍼 전역을 사용하는 것이 가장 좋다고 생각하니, 또는 그런 종류의 정보를 클래스에 한정하는 것이 가장 좋습니다. 내가 제공 한 예가 약간 추상적이라는 것을 안다. – Hugo
무엇이 최선의 OOP 방식이라고 생각합니까? – Hugo
@Hugo, 가장 좋은 방법은 클래스를 생성하여 생성자에서 작동하는 데 필요한 모든 것을 전달하는 방식으로 일반화되도록하는 것입니다. 그런 다음 각 함수에 대해 매개 변수로 추가 매개 변수를 전달하십시오. 이 규칙을 어기는 유일한 시간은 데이터베이스 연결 또는 구성 옵션과 같은 것들입니다. 청교도들은 그것들도 통과되어야한다고 말했을 것이고, 그들은 옳다. – Brad