기능의 PHP 클래스 인수
문제
해당 클래스의 기능 중 하나에서 수업에서 인수를 사용하는 데 어려움이 있습니다.
회사라는 수업이 있습니다.
class company {
var $name;
function __construct($name) {
echo $name;
}
function name() {
echo $name;
}
}
$comp = new company('TheNameOfSomething');
$comp->name();
내가 그것을 인스턴스화 할 때 (두 번째로 마지막 줄), 구성 마법 방법은 잘 작동하고 "thenameofsomething"을 반향시킵니다. 그러나 이름 () 함수를 호출하면 아무것도 얻지 못합니다.
내가 뭘 잘못하고 있죠? 모든 도움은 대단히 감사합니다. 다른 정보가 필요하면 물어보십시오!
감사
-Giles
http://gilesvangruisen.com/
해결책
$이 키워드를 사용하여 클래스 속성을 설정해야합니다.
class company {
var $name;
function __construct($name) {
echo $name;
$this->name = $name;
}
function name() {
echo $this->name;
}
}
$comp = new company('TheNameOfSomething');
$comp->name();
다른 팁
두 메소드에서 $ 이름을 사용하는 경우 $ 이름 변수의 범위는 생성 된 함수로 제한됩니다. 기타 방법 또는 포함 된 클래스는 변수를 읽을 수 없거나 존재한다는 것을 알아야하므로 설정해야합니다. 클래스 변수를 사용합니다 $this->
접두사.
$this->name = $name;
이를 통해 값은 지속적이며 클래스의 모든 기능에 사용할 수 있습니다. 또한 변수는 공개되므로 모든 스크립트 또는 클래스는 변수의 값을 읽고 수정할 수 있습니다.
$comp = new company();
$comp->name = 'Something';
$comp->name(); //echos 'Something'
제휴하지 않습니다 StackOverflow