Computer >> 컴퓨터 >  >> 프로그래밍 >> PHP

PHP에서 변수에 저장된 문자열로 함수를 호출하는 방법

PHP에서는 변수에 저장된 문자열을 함수 이름으로 사용하여 해당 함수를 호출할 수 있습니다. 이를 가변 함수(Variable Function)라고 하며, 코드의 유연성을 높이는 데 유용하게 활용됩니다.

기본 문법

함수 이름을 담을 변수를 선언한 뒤, 변수 뒤에 괄호를 붙여 호출하면 됩니다.

$func = 'anyFunctionName';
$func();

위 코드는 $func 변수에 저장된 문자열과 같은 이름의 함수를 실행합니다.

예제

다음은 변수에 저장된 문자열로 함수를 호출하는 PHP 예제입니다.

<!DOCTYPE html>
<html>
<body>
<?php
function hello(){
    echo "Calling hello method."."<br>";
}
function welcome(){
    echo "Calling welcome method."."<br>";
}
$func = 'hello';
$func();
?>
</body>
</html>

실행 결과

위 코드를 실행하면 다음과 같은 결과가 출력됩니다.

Calling hello method.

동작 원리 설명

이 예제에서 $func = 'hello';는 문자열 'hello'를 변수에 저장합니다. 이후 $func();를 호출하면 PHP는 변수에 담긴 값인 'hello'와 같은 이름의 함수를 찾아 실행합니다. 따라서 hello() 함수가 호출되어 "Calling hello method."라는 메시지가 출력됩니다.

주의 사항

가변 함수를 사용할 때는 보안에 유의해야 합니다. 사용자 입력값을 그대로 함수 이름으로 사용하면 의도하지 않은 함수가 실행될 수 있으므로, 반드시 허용된 함수 목록(화이트리스트)으로 검증한 후 호출하는 것이 안전합니다.