PHP 멤버 메소드에서 사용자 정의 함수를 작성할 수 있나요?
메서드에 함수를 정의했는데 호출시 오류가 보고되었습니다
오류를 보고한 메소드입니다
다음과 같이 오류가 보고되었습니다
하지만 함수를 작성하고 재귀를 수행하는 또 다른 방법이 있는데 오류가 보고되지 않습니다.
이 두 메소드를 호출하기 위한 인터페이스입니다
오류가 보고되는 이유는 무엇인가요? 누구든지 설명할 수 있거나 처리할 수 있는 좋은 방법이 있습니까
PHP 멤버 메소드에서 사용자 정의 함수를 작성할 수 있나요?
메서드에 함수를 정의했는데 호출시 오류가 보고되었습니다
오류를 보고한 메소드입니다
다음과 같이 오류가 보고되었습니다
하지만 함수를 작성하고 재귀를 수행하는 또 다른 방법이 있는데 오류가 보고되지 않습니다.
이 두 메소드를 호출하기 위한 인터페이스입니다
오류가 보고되는 이유는 무엇인가요? 누구든지 설명할 수 있거나 처리할 수 있는 좋은 방법이 있습니까
클래스의 멤버 메소드로 사용자 정의 함수를 작성해 보는 것은 어떨까요?
감사합니다. 여기서 보고한 오류는 다른 곳에서 getTree 함수를 정의했기 때문에 발생한 것입니다.
다음과 같은 더 나은 선택의 PHP 클로저도 있습니다.
<code>class Test{ public function index(){ $hello_closures = function ($str){ echo $str; }; $hello_closures("hello , php closures function"); } }</code>
이해하기 쉬운 공식 문서는 여기에서 확인하세요: http://php.net/manual/zh/func...
오류 메시지는 이미 명확합니다. getTree 함수는 이미 LabelController에 정의되어 있습니다.
PHP의 함수(클래스 메서드 아님)는 모두 전역적입니다. 즉, 전역적으로 정의하든 함수에서 정의하든 전역적으로 간주됩니다(이것은 js와 다릅니다). 동일합니다. 혼동하지 마세요. ).
php는 함수 오버로딩(즉, 중복된 이름 없음)을 지원하지 않으므로 함수의 반복 선언은 허용되지 않습니다(오버로딩의 경우 클래스에서 구현할 수 있지만 의미는 전혀 다릅니다. 오류 처리 기능이지만, 친근한 표시를 위해 사용하지만 개인적으로 쓸모가 없다고 생각합니다.)