runkit7_function_redefine
(PECL runkit7 >= Unknown)
runkit7_function_redefine — 함수 정의를 새 구현으로 교체
설명
runkit7_function_redefine( string $function_name, string $argument_list, string $code, bool $return_by_reference = null, string $doc_comment = null, string $return_type = ?, bool $is_strict = ? ): bool
runkit7_function_redefine( string $function_name, Closure $closure, string $doc_comment = null, string $return_type = ?, bool $is_strict = ? ): bool
참고: 기본적으로 사용자 공간 함수만 제거, 이름 변경 또는 수정할 수 있습니다. 내부 함수를 재정의하려면 php.ini에서 runkit.internal_override
설정을 활성화해야 합니다.
매개변수
function_name
- 재정의할 함수 이름
argument_list
- 함수에서 허용할 새 인수 목록
code
- 새로운 코드 구현
closure
- 함수를 정의하는 클로저.
return_by_reference
- 함수가 참조로 반환해야 하는지 여부입니다.
doc_comment
- 함수의 문서 주석입니다.
return_type
- 함수의 반환 유형입니다.
is_strict
- 함수가
strict_types=1
인 파일에서 선언된 것처럼 작동하는지 여부
반환 값
성공하면 true
를, 실패하면 false
를 반환합니다.
Examples
예제 #1 runkit7_function_redefine() 예제
<?php
function testme() {
echo "Original Testme Implementation\n";
}
testme();
runkit7_function_redefine('testme','','echo "New Testme Implementation\n";');
testme();
?>
위의 예는 다음을 출력합니다.
Original Testme Implementation New Testme Implementation
기타
- runkit7_function_add() - create_function과 유사한 새 함수 추가
- runkit7_function_copy() - 함수를 새 함수 이름으로 복사
- runkit7_function_rename() - 함수 이름 변경
- runkit7_function_remove() - 함수 정의 제거
- runkit7_method_redefine() - 주어진 메소드의 코드를 동적으로 변경