잘못된 코드 :문자열을 사용하여 PHP에서 함수를 선언 하시겠습니까?
$functionName = 'sayThis';
function $functionName($string) {
echo $string;
}
내가 이런 일을 할 수 있습니까?
잘못된 코드 :문자열을 사용하여 PHP에서 함수를 선언 하시겠습니까?
$functionName = 'sayThis';
function $functionName($string) {
echo $string;
}
내가 이런 일을 할 수 있습니까?
나는 이것을 권장하지 않지만 주장하는 경우 eval을 사용하는 것이 좋습니다.
매우 조심하십시오. 그리고 사용자 입력으로부터 멀리 떨어져 있어야합니다!
<?php
$name = 'sayThis';
$code = <<<PHP
function $name(\$string) {
echo \$string;
}
PHP;
eval($code);
$name('This is NOT a good idea!');
?>
+1 OP의 질문에 답하는 것 같습니다. 그것은 당신이 요구하는 것을 조심해야 할 것들 중 하나입니다. –
정말 원하지 않습니다. 끔찍한 생각. –
왜 이렇게하고 싶은지 이해하는 데 도움이 될 것입니다. 무엇을 성취하려고합니까? –
많은 파일에서 동일한 함수 (processFormSubmission())가 있습니다. 이 함수는 현재 하나의 이름을 가지고 있지만 파일이있는 파일에 따라 여러 가지 작업을 수행합니다. 때로는 동일한 함수 이름을 한 번에 실행할 수 있습니다. 이 경우 함수가 이미 선언되었다는 오류가 발생합니다. 이름 충돌이 없도록 동적으로 함수의 이름을 지정하고 싶습니다. 함수의 동적으로 할당 된 이름은 클래스에 저장됩니다. –