이 글에서는 주로 PHP 익명함수 관련 정보와 주의사항을 소개합니다. PHP5.3에서는 익명함수 뿐만 아니라 새로운 기능도 추가되었습니다. 아래에서는 PHP에 대한 자세한 설명을 살펴보겠습니다. 익명 기능 및 주의사항이 필요한 친구는
PHP 익명 기능 및 주의사항
PHP5.2 이전: 자동 로드, PDO 및 MySQLi, 유형 제약 조건
PHP5.2: JSON 지원
PHP5.3: 더 이상 사용되지 않는 기능을 참조하세요. , 익명 함수, 새로운 매직 메서드, 네임스페이스, 후기 정적 바인딩, Heredoc 및 Nowdoc, const, 삼항 연산자, Phar
PHP5.4: Short Open Tag, 배열 약어, 특성, 내장 웹 서버, 세부 정보 수정됨
PHP5.5 : Yield, list()는 foreach에 사용되며 세부 사항은 수정됨
PHP5.6: 상수 향상, 가변 함수 매개변수, 네임스페이스 향상
이제는 기본적으로 모두 PHP5.3 이상 버전을 사용하지만 공통적인 현상은 다음과 같습니다. 새로운 기능은 오랜 시간이 지나도 완전히 대중화되지 않았으며 프로젝트에서는 거의 사용되지 않습니다.
PHP 익명 함수 보기:
'test' => function(){ return 'test' },
PHP 익명 함수의 정의는 매우 간단합니다. 변수에 값을 할당하는 것이지만 이 값은 함수입니다.
위는 Yii 프레임워크를 사용하여 구성한 컴포넌트 파일이며, 테스트 구성이 추가되어 있습니다.
PHP 익명 함수란 무엇인가요?
공식 설명 보기:
클로저라고도 불리는 익명 함수를 사용하면 지정된 이름 없이 일시적으로 함수를 생성할 수 있습니다. 콜백 함수 인수로 가장 일반적으로 사용되는 값입니다. 물론 다른 응용 프로그램도 있습니다.
익명 함수 예시
<?php echo preg_replace_callback('~-([a-z])~', function ($match) { return strtoupper($match[1]); }, 'hello-world'); // 输出 helloWorld ?>
클로저 함수는 변수의 값으로도 사용할 수 있습니다. PHP는 자동으로 이 표현식을 내장 클래스 Closure의 객체 인스턴스로 변환합니다. 클로저 객체를 변수에 할당하는 방법은 일반 변수 할당 구문과 동일하며 끝에 세미콜론도 추가합니다.
익명 함수 변수 할당 예
<?php $greet = function($name) { printf("Hello %s\r\n", $name); }; $greet('World'); $greet('PHP'); ?>
클로저는 다음에서 액세스할 수 있습니다. 상위 범위 상속된 변수. 이러한 변수는 사용 언어 구성을 사용하여 전달되어야 합니다.
상위 범위에서 변수 상속
<?php $message = 'hello' // 没有 "use" $example = function () { var_dump($message); }; echo $example(); // 继承 $message $example = function () use($message) { var_dump($message); }; echo $example(); // Inherited variable's value is from when the function // is defined, not when called $message = 'world'echo $example(); // Reset message $message = 'hello' // Inherit by-reference $example = function () use(&$message) { var_dump($message); }; echo $example(); // The changed value in the parent scope // is reflected inside the function call $message = 'world'echo $example(); // Closures can also accept regular arguments $example = function ($arg) use($message) { var_dump($arg . ' ' . $message); }; $example("hello"); ?>
php의 익명 함수에 대한 주의 사항
php5.3 이후 php에서 익명 함수 사용을 추가했는데 오늘은 익명을 사용할 때 오류가 발생했습니다. of php 함수가 그렇게 선언되어 사용되는데, 코드를 자세히 봐주세요
$callback=function(){ return "aa"; }; echo $callback();
인쇄된 단어는 aa;
아래 예를 보세요:
echo $callback(); $callback=function(){ return "aa"; };
오류가 보고되었습니다 이때! $callback은 선언되지 않았지만 PHP 자체에서 선언된 함수를 사용할 때 오류가 보고되지 않습니다!
function callback(){ return "aa"; } echo callback(); //aa echo callback(); //aa function callback(){ return "aa"; }
둘 다 aa로 출력됩니다.
익명 함수를 사용할 때는 익명 함수를 변수로 사용하므로 js에서도 마찬가지입니다! ! ! ! !
위 내용은 이 글의 전체 내용입니다. 모든 분들의 공부에 도움이 되었으면 좋겠습니다.
관련 권장 사항:
날짜, 월, 일, 주, 시간, 분, 초 등에 대해 PHP에서 덧셈과 뺄셈을 구현하는 방법
PHP는 텍스트 상자, 비밀번호 필드 및 버튼의 값을 가져오는 것을 구현합니다
위 내용은 PHP 익명 기능 및 주의사항에 대한 자세한 설명의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!