미안하지만 말도 안되는 질문처럼 들리 겠지만 클래스의 메서드 (생성자 아님)가 함수 선언에서 매개 변수를 사용할 수 있습니까?클래스의 메소드 (생성자 아님)가 매개 변수를 사용할 수 있습니까?
메소드 (생성자 아님)를 본 모든 예제는 변수를 전달하지 않지만 함수 본문 내에 $ this-> someVariable을 사용하여 클래스에서 이미 선언 된 변수를 호출합니다.
미안하지만 말도 안되는 질문처럼 들리 겠지만 클래스의 메서드 (생성자 아님)가 함수 선언에서 매개 변수를 사용할 수 있습니까?클래스의 메소드 (생성자 아님)가 매개 변수를 사용할 수 있습니까?
메소드 (생성자 아님)를 본 모든 예제는 변수를 전달하지 않지만 함수 본문 내에 $ this-> someVariable을 사용하여 클래스에서 이미 선언 된 변수를 호출합니다.
예, 확실히 할 수 있습니다
class Foo {
public function sum($a, $b, $c) {
$sum = $a + $b + $c;
return $sum;
}
}
$foo = new Foo();
echo $foo->sum(1,2,3); //Displays 6
물론 다른 모든 기능과 마찬가지입니다.
<?php
class Foo {
public function displayParameter($param) {
return $param;
}
}
$foo = new Foo();
echo $foo->displayParameter("Hello World"); //Displays Hello World
?>
예. 호출 된 메서드 내에서 값을 변경하려면 매개 변수를 직접 전달하거나 참조로 전달할 수 있습니다. 나에게 독서의 비트를 추천 할 수 : http://php.net/manual/en/index.php
상황에 따라 다르다. 클래스가 객체를 나타내는 경우 함수 (메소드)가 액세스 할 수있는 속성을 갖게됩니다. 정적 메서드는 종종 매개 변수를 받아들입니다. 그래서 대답은 그렇습니다. 메서드는 매개 변수를 받아 들일 수 있지만 클래스를 사용하는 방법에 따라 달라집니다.
클래스의 메소드 (생성자 아님)가 함수 선언에서 매개 변수를 사용할 수 있습니까?
예.
그런 일을하는 것은 일반적으로 나쁜 습관입니다. 클래스 내부에서하는 것은 더욱 나쁜 습관입니다. –