我有一个PHP函数,我需要创建它来执行存储在变量中的PHP或HTML代码。这是一个问题。另一个问题是该函数将被多次创建并且需要一个唯一的名称,所以我在$title
之后命名它,但我不确定这是否会从{{1}的值创建函数或者它是否会创建一个名为$title
的函数,或者它是否会起作用。这是我的代码:
$title
这里的一些代码......
$title = $_POST['sogo_aso_name'];
$output = $_POST['sogo_aso_output'];
所以......那是我的问题。我不确定什么会干净地执行$ output,所以它可以显示在页面上。而且我不知道该函数是否会以function $title ($output)
{
//Some Code Here to execute $output...
}
感谢您的帮助!
Ethan Brouwer
答案 0 :(得分:2)
您可以像这样使用call_user_func
:
call_user_func($title, $output);
但更改一个功能的名称真的很奇怪。
答案 1 :(得分:0)
遗憾的是,您无法做到这一点。如果需要使用通用名称为函数添加前缀,则可以创建名称空间。
namespace fArr {
function func1 (args) {}
function func2 (args) {}
}
要打电话给他们,您可以使用:
namespace {
fArr\func1($title, $output);
}
通常,您希望避免创建完全匿名的函数。也许创建一个处理所有请求的标题和输出的函数。或者创建一个新对象,将func名称作为属性并为其分配输出。
$title = $_POST['sogo_aso_name'];
$output = $_POST['sogo_aso_output'];
// Store data in an object named after the value of $title
// Note that constant use of this can get very messy, and very confusing
$$title = (object) array('output' => $output);