Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/django/21.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
PHP中基于参数输入的函数名自动设置_Php - Fatal编程技术网

PHP中基于参数输入的函数名自动设置

PHP中基于参数输入的函数名自动设置,php,Php,我现在正在制作一个AJAX脚本。我有一个html文件、一个javascript文件和一个PHP文件 JavaScript文件将具有一个函数,该函数将参数request_name传递给URL。捕获请求的PHP脚本有一个switch语句,该语句根据请求的名称值调用不同的函数。函数名是request_name值,即如果$_request['request_name']是“test_function”,则switch语句调用test_function() 由于参数名称值将与函数名称相同,如果设置了该参数

我现在正在制作一个AJAX脚本。我有一个html文件、一个javascript文件和一个PHP文件

JavaScript文件将具有一个函数,该函数将参数request_name传递给URL。捕获请求的PHP脚本有一个switch语句,该语句根据请求的名称值调用不同的函数。函数名是request_name值,即如果$_request['request_name']是“test_function”,则switch语句调用test_function()

由于参数名称值将与函数名称相同,如果设置了该参数,是否有任何方法基本上只使用PHP调用请求名称值。这似乎比使用switch语句更容易,尤其是因为会有很多函数。

试试以下方法:

$func = "mynamespace_".$_REQUEST["request_name"];
if (function_exists($func)) {
    $func();
} else {
    header("Location: /index.html");
    exit;
}