>  기사  >  백엔드 개발  >  PHP Advanced - 함수 비디오 튜토리얼 공유

PHP Advanced - 함수 비디오 튜토리얼 공유

黄舟
黄舟원래의
2017-08-30 13:29:291045검색

소개: PHP는 기능을 완성하는 데 도움이 되는 강력한 시스템 기능을 제공하지만 때로는 시스템 기능을 사용하는 것만으로는 충분하지 않을 때도 있습니다. 비즈니스에 따라 사용자 정의 기능을 캡슐화해야 합니다. "PHP Advanced - Function Video Tutorial"에서는 사용자 정의 방법을 설명합니다. 함수와 사용자 정의 함수의 일반적인 문제 PHP를 시작하기 위해 꼭 읽어야 할 과정입니다.

PHP Advanced - 함수 비디오 튜토리얼 공유

강좌 재생 주소: http://www.php.cn/course/417.html

선생님의 강의 스타일:

선생님의 강의는 생생하고 재치 있고 재치 있습니다. 감동. 생생한 은유는 학생들에게 지혜의 문을 열어주는 마무리와 같습니다. 잘 배치된 유머는 마치 부드러운 와인 한 잔을 마시는 것과 같이 학생들에게 아는 듯한 미소를 가져다 주고, 사람들에게 철학자의 격언과 문화적 언급을 선사합니다. 내레이션에 때때로 삽입되어 사람들에게 생각과 주의력을 제공합니다.

이 비디오에서 더 어려운 점은 PHP에서 콜백 함수를 사용하는 것입니다.

콜백 함수와 클로저는 JS에서 이를 사용하여 이벤트 메커니즘을 완성하고 많은 복잡한 작업을 수행할 수 있습니다. PHP에서는 일반적으로 사용되지 않습니다. 오늘은 PHP의 콜백 함수와 익명 함수에 대해 이야기하겠습니다.

콜백 함수

콜백 함수: 콜백(즉, 콜백은 메인 함수에 의해 호출되고 작동된 후 메인 함수로 돌아갑니다)은 다른 코드로 전달되는 특정 실행 코드 블록에 대한 참조를 나타냅니다. 함수 매개변수를 통해

사용하기 위해 함수를 다른 함수에 매개변수로 전달하는 것이 널리 사용됩니다. PHP에는 array_map, usort, call_user_func_array 등과 같이 "매개변수를 함수로 요구하는" 함수가 많이 있습니다. 그런 다음 결과를 직접 기본 함수로 반환합니다. 장점은 함수를 값으로 사용하기 편리하고, 코드가 간결하고 가독성이 좋다는 점입니다.

오늘은 제가 만든 클래스 메소드에 다른 클래스 메소드의 콜백 함수를 호출하고 싶었는데, 콜백 함수 대신에 다른 클래스 메소드 이름을 직접 쓰고 싶었는데 계속 ""라는 오류가 뜹니다. 매개변수가 유효하지 않습니다." 나중에 SELF 키워드를 사용해볼까 고민했는데 계속 이런 오류가 뜹니다. 정말 어떻게 해야할지 모르겠습니다. 중국어 매뉴얼을 확인했지만 해결책을 찾을 수 없었습니다. 그러다가 PHP 공식 웹사이트의 매뉴얼을 주의 깊게 살펴보았습니다. 이 매뉴얼에는 이 문제를 해결하기 위한 구문이 있습니다.

class utils{
 
  
 
   public function array_or( $input )
 
   {
 
      return array_reduce( $input, array('Utils','sum' ), 0 );
 
   }
 
   public function sum( $v, $w )
 
   {
 
      return $v += $w;
 
   }
 
  
 
}
 
$uti = new utils;
 
$a = array(1,2,3,4,5);
 
echo $uti->array_or($a);

왜 다른 클래스 메서드를 배열 형식으로 호출하는지 매우 이상하게 느껴집니다. SELF 키워드를 사용하는 것이 더 적절한 것 같습니다. 디자인할 때 어떤 고려 사항이 있는지 정말 모르겠습니다. 그런 구문입니다. 그런데 이렇게 디자인을 한 데에는 이유가 있을 거라 생각하는데 아직까지는 그 이유를 깨닫지 못했습니다.

위 내용은 PHP Advanced - 함수 비디오 튜토리얼 공유의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.