답변:
기본값은 공개입니다.
클래스 메소드는 공용, 개인 또는 보호로 정의 될 수 있습니다. 명시 적 가시성 키워드없이 선언 된 메서드는 공용으로 정의됩니다.
기본값은 공개입니다. 항상 포함하는 것이 좋지만 PHP4는 액세스 수정자가없는 클래스를 지원하므로 레거시 코드에서 사용되지 않는 것이 일반적입니다.
그리고 아니요, PHP에는 패키지 가시성이 없습니다. 주로 최근까지 PHP에는 패키지가 없었기 때문입니다.
기본값은 공개입니다. 그 이유는 아마도 이전 코드가 공개 될 것으로 예상하기 때문에 이전 버전과의 호환성 때문일 것입니다 (공개가 아니면 작동하지 않을 것입니다).
가시성 키워드 ( public
, private
또는 protected
)를 사용 하지 않으면 메서드는 public이 됩니다. 그러나 이러한 방식으로 속성을 정의 할 수 없습니다. 들어 속성 , 당신은 선언에 대한 가시성 키워드를 추가해야합니다.
클래스에서 선언되지 않은 속성의 경우 메서드 내에서 값을 할당하면 공개 가시성을 갖게됩니다.
<?php
class Example {
public $name;
public function __construct() {
$this -> age = 9; // age is now public
$this -> privateFunction();
}
private function privateFunction() {
$this -> country = "USA"; // this is also public
}
}